Dask 数据框没有属性分类
Dask dataframe has no attribute categorize
我正在尝试将带有分类列的 Dask 数据框存储到每个 this tutorial - 1:23:25 - 1:23:45.[=25= 的 *.h5
文件中]
这是我对 store
函数的调用:
stored = store(ddf,'/home/HdPC/Analyzed.h5', ['Tag'])
函数store
是:
@delayed
def store(ddf,fp,c):
ddf.categorize(columns=c).to_hdf(fp, '/data2')
并使用 categorize.
ddf
和 stored
的类型为:
print(type(ddf), type(stored))
>>> (<class 'dask.dataframe.core.DataFrame'>, <class 'dask.delayed.Delayed'>)
当我 运行 compute(*[stored])
或 stored.compute()
时,我得到:
dask.async.AttributeError: 'DataFrame' object has no attribute 'categorize'
有没有办法用store
函数实现Tag
列的这种分类?或者我应该使用不同的方法来存储具有分类的 Dask 数据帧?
我建议您在没有延迟调用的情况下尝试数据帧操作 - daak-dataframes 在内部已经是惰性计算图。我相信通过调用计算,你实际上是将结果 pandas 数据帧传递给你的函数,这就是你得到错误的原因。
在您的情况下:只需删除 @delayed
(记住 to_hdf 是阻塞调用)。
我正在尝试将带有分类列的 Dask 数据框存储到每个 this tutorial - 1:23:25 - 1:23:45.[=25= 的 *.h5
文件中]
这是我对 store
函数的调用:
stored = store(ddf,'/home/HdPC/Analyzed.h5', ['Tag'])
函数store
是:
@delayed
def store(ddf,fp,c):
ddf.categorize(columns=c).to_hdf(fp, '/data2')
并使用 categorize.
ddf
和 stored
的类型为:
print(type(ddf), type(stored))
>>> (<class 'dask.dataframe.core.DataFrame'>, <class 'dask.delayed.Delayed'>)
当我 运行 compute(*[stored])
或 stored.compute()
时,我得到:
dask.async.AttributeError: 'DataFrame' object has no attribute 'categorize'
有没有办法用store
函数实现Tag
列的这种分类?或者我应该使用不同的方法来存储具有分类的 Dask 数据帧?
我建议您在没有延迟调用的情况下尝试数据帧操作 - daak-dataframes 在内部已经是惰性计算图。我相信通过调用计算,你实际上是将结果 pandas 数据帧传递给你的函数,这就是你得到错误的原因。
在您的情况下:只需删除 @delayed
(记住 to_hdf 是阻塞调用)。