dask.dataframe.DataFrame.shuffle

dask.dataframe.DataFrame.shuffle

DataFrame.shuffle(on, npartitions=None, max_branch=None, shuffle_method=None, ignore_index=False, compute=None)

将 DataFrame 重新排列为新的分区

使用 on 的哈希值将行映射到输出分区。在此操作之后,具有相同 on 值的行将在同一分区中。

参数
字符串、字符串列表,或 Series、Index、DataFrame

用于将行映射到输出分区的列或索引

npartitionsint, 可选

输出分区的数量。默认情况下,分区数量不会被改变。

max_branch: int, 可选

每个输入分区允许的最大分割次数。用于分阶段洗牌算法中。

shuffle_method: {‘disk’, ‘tasks’, ‘p2p’}, 可选

可以是 'disk' 用于单节点操作,或者是 'tasks''p2p' 用于分布式操作。将由您当前的调度器推断。

ignore_index: bool, 默认为 False

在洗牌期间忽略索引。如果 True,性能可能会提高,但索引值将不会被保留。

compute: bool

是否触发立即计算。默认为 False。

注释

这不会保留有意义的索引/分区方案。如果在并行处理中这样做,这不是确定性的。

示例

>>> df = df.shuffle(df.columns[0])