dask cudf无法访问map_partitions
我尝试创建一个 dask_cudf 数据框,但遇到了一个错误。
import dask_cudf
import cudf
# Example pandas DataFrame with a datetime string column
pdf = pd.DataFrame({'datetime_str': ['2024-03-19 12:00:00', '2024-03-19 10:00:00', '2024-03-19 11:00:00']})
# Convert the pandas DataFrame to a cuDF DataFrame
cdf = cudf.from_pandas(pdf)
# Convert the cuDF DataFrame to a Dask cuDF DataFrame
ddf = dask_cudf.from_cudf(cdf, npartitions=2) # error
我收到的错误信息是:
AttributeError: DataFrame object has no attribute map_partitions
我发现了
cudf.core.dataframe.DataFrame # no map_partitions
dask_cudf.DataFrame.map_partitions
dask_cudf.core.map_partitions
dask_cudf.core.DataFrame.map_partitions
dask.dataframe.map_partitions
怎么才能让 "dask_cudf.from_cudf" 使用 map_partitions 呢?谢谢!
1 个回答
0
根据文档:
dask_cudf.from_cudf
是一个简单的封装,基于dask.dataframe.from_pandas()
而第一个参数 data
预计是 pandas.DataFrame
或 pandas.Series
。
所以第一个选项是:
# Sample data frame
pdf = pd.DataFrame({
'datetime_str': [
'2024-03-19 12:00:00',
'2024-03-19 10:00:00',
'2024-03-19 11:00:00']})
# Create Dask-cuDF DataFrame
ddf = dask_cudf.from_cudf(pdf, npartitions=2)
第二个选项是:
对于那些在 Dask-cuDF 中不直接支持的磁盘数据,我们建议使用 Dask 的数据读取功能,然后调用
from_dask_dataframe()
来获取一个 Dask-cuDF 对象。