python - 将 dask 数据帧转换为矩阵或二维数组

标签 python dask

有没有办法将 dask 数据帧转换为矩阵或二维数组?我知道 dask 还不支持多索引。我不知道我们如何为此使用 dask delayed。

最佳答案

版本 0.13.0(发布日期 2017 年 1 月)包括 DataFrame.valuesDataFrame.to_records 方法,可以将 Dask Dataframe 转换为 Dask Array

In [1]: import dask.dataframe as dd

In [2]: import pandas as pd

In [3]: df = pd.DataFrame({'x': [1, 2, 3], 'y': [4, 5, 6]})

In [4]: ddf = dd.from_pandas(df, npartitions=2)

In [5]: ddf
Out[5]: dd.DataFrame<from_pa..., npartitions=1, divisions=(0, 2)>

In [6]: ddf.values
Out[6]: dask.array<values-..., shape=(nan, 2), dtype=int64, chunksize=(nan, 2)>

In [7]: ddf.values.compute()
Out[7]: 
array([[1, 4],
       [2, 5],
       [3, 6]])

In [8]: ddf.to_records()
Out[8]: dask.array<to-reco..., shape=(nan,), dtype=(numpy.record, [('index', '<i8'), ('x', '<i8'), ('y', '<i8')]), chunksize=(nan,)>

In [9]: ddf.to_records().compute()
Out[9]: 
rec.array([(0, 1, 4), (1, 2, 5), (2, 3, 6)], 
          dtype=[('index', '<i8'), ('x', '<i8'), ('y', '<i8')])

关于python - 将 dask 数据帧转换为矩阵或二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40917443/

相关文章:

python - Dask 连接一系列数据帧

来自 xx.xx import * : no module named 的 Python 导入错误

python - 使用 ndb.blobproperty 引发的值错误

python - 如何找到使用 flask-migrate 创建的最新迁移?

python-3.x - 如果延迟评估,如何检查 dask 数据框是否为空?

python - 使用本地目录启动 dask 工作程序

pandas - 如何在 Dask Dataframe 上估算列值?

python - Groupby.transform 在 dask 数据帧中不起作用

python - 值错误 : invalid literal for int() with base 10: b'1\n5\n'

python - 使用 Google OR 工具对类变量添加约束