提问人:Adrien Pacifico 提问时间:8/21/2023 更新时间:8/21/2023 访问量:76
使用 pyarrow dtype 创建 dask 数组
Create a dask array with pyarrow dtype
问:
在 pandas 中,我可以通过以下方式使用 pyarrow dtype 创建一个系列:
>>> import pandas as pd
>>> s = pd.Series([1,2,3]).astype("int64[pyarrow]")
>>> s.dtype
int64[pyarrow]
我没有找到如何用 Dask 做到这一点。
我试过了:
>>> import dask.config
>>> import dask.array as da
>>> dask.config.set({"array.pyarrow_dtype": True})
>>> s = da.array([1,2,3])
>>> s
它返回一个具有 numpy int 64 dtype 的数组。
我还尝试了以下方法:
>>> import dask.array as da
>>> s = da.array([1,2,3], dtype="int64[pyarrow]")
TypeError: data type 'int64[pyarrow]' not understood
和
>>> import dask.array as da
>>> import pyarrow as pa
>>> s = da.array([1,2,3], pa.int64())
TypeError: Cannot interpret 'DataType(int64)' as a data type
可能吗?
答:
1赞
mdurant
8/21/2023
#1
dask.array 不直接支持 pyarrow。事实上,由于它们将代表(常规)numpy 数组,因此箭头不会提供任何好处。
IS 支持支持 NEP18 () 的任意数组后端,例如,允许将 numpy 换成 cupy。但是,我不相信这包括任何箭头结构 - 或者我不知道如何实现它。__array_function__
您在 dask 中看到的对箭头支持的引用特定于 DataFrame,并且通常(总是?)用于字符串。
评论