有了一个包含许多.feather
文件的文件夹,我想将它们全部加载到python中的dask中。
到目前为止,我已经尝试了以下来自GitHub https://github.com/dask/dask/issues/1277上类似问题的答案
files = [...]
dfs = [dask.delayed(feather.read_dataframe)(f) for f in files]
df = dd.concat(dfs)
不幸的是,这给出了这里提到的错误TypeError: Truth of Delayed objects is not supported
,但解决方法并不清楚。
是否可以在dask中执行上述操作?
发布于 2019-08-08 19:10:56
您希望使用from_delayed
,而不是对数据帧进行操作的concat
,它将延迟的对象列表(每个对象代表一个数据帧)转换为单个逻辑数据帧
dfs = [dask.delayed(feather.read_dataframe)(f) for f in files]
df = dd.from_delayed(dfs)
如果可能,您还应该提供meta=
(一个零长度的数据帧,描述列、索引和数据类型)和divisions=
(沿着分区的索引的边界值) kwargs。
https://stackoverflow.com/questions/57403908
复制相似问题