当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


Python dask.dataframe.from_pandas用法及代码示例

用法:

dask.dataframe.from_pandas(data, npartitions=None, chunksize=None, sort=True, name=None)

从 Pandas DataFrame 构造 Dask DataFrame

这会将in-memory Pandas 数据帧分成几个部分,并从 Dask.dataframe 可以并行操作的那些部分构造一个 dask.dataframe。默认情况下,输入数据帧将按索引排序以生成cleanly-divided 分区(具有已知分区)。要保留输入顺序,请确保输入索引为monotonically-increasing。 sort=False 选项也将避免重新排序,但不会导致已知的除法。

请注意,尽管具有并行性,但 Dask.dataframe 可能并不总是比 Pandas 快。我们建议您在切换到 Dask.dataframe 之前尽可能长时间地使用 Pandas。

参数

datapandas.DataFrame 或 pandas.Series

用于构建 Dask DataFrame/Series 的 DataFrame/Series

npartitions整数,可选

要创建的索引的分区数。请注意,根据数据帧的大小和索引,输出的分区可能少于请求的分区。

chunksize整数,可选

要使用的每个索引分区的行数。

sort: bool

首先按索引对输入进行排序以获得干净划分的分区(具有已知的划分)。如果为 False,则不会对输入进行排序,并且所有分区都将设置为 None。默认为真。

name: string, optional

DataFrame 的可选键名。默认散列输入

返回

dask.DataFrame 或 dask.Series

沿索引分区的 dask DataFrame/Series

抛出

TypeError

如果传入 pandas.DataFramepandas.Series 以外的其他内容。

例子

>>> from dask.dataframe import from_pandas
>>> df = pd.DataFrame(dict(a=list('aabbcc'), b=list(range(6))),
...                   index=pd.date_range(start='20100101', periods=6))
>>> ddf = from_pandas(df, npartitions=3)
>>> ddf.divisions  
(Timestamp('2010-01-01 00:00:00', freq='D'),
 Timestamp('2010-01-03 00:00:00', freq='D'),
 Timestamp('2010-01-05 00:00:00', freq='D'),
 Timestamp('2010-01-06 00:00:00', freq='D'))
>>> ddf = from_pandas(df.a, npartitions=3)  # Works with Series too!
>>> ddf.divisions  
(Timestamp('2010-01-01 00:00:00', freq='D'),
 Timestamp('2010-01-03 00:00:00', freq='D'),
 Timestamp('2010-01-05 00:00:00', freq='D'),
 Timestamp('2010-01-06 00:00:00', freq='D'))

相关用法


注:本文由纯净天空筛选整理自dask.org大神的英文原创作品 dask.dataframe.from_pandas。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。