【发布时间】:2020-03-16 03:13:18
【问题描述】:
我从 geopandas 期货创建了一个 dask 数据框,每个都按照此处的示例生成一个 pandas 数据框:https://gist.github.com/mrocklin/e7b7b3a65f2835cda813096332ec73ca
daskdf = dd.from_delayed(lazy_dataframes,lazy_dataframes, meta=lazy_dataframes[0].compute())
所有 dtypes 似乎都是合理的
daskdf.dtypes
left float64
bottom float64
right float64
top float64
score object
label object
height float64
area float64
geometry geometry
shp_path object
geo_index object
Year int64
Site object
dtype: object
但是 dd groupby 操作失败
daskdf.groupby(['Site']).height.mean().compute()
...
"/Users/ben/miniconda3/envs/crowns/lib/python3.7/site-packages/dask/dataframe/utils.py", line 577, in _nonempty_series
data = np.array([entry, entry], dtype=dtype)
builtins.TypeError: data type not understood
而 pandas 对相同数据的相同处理没有问题。
daskdf.compute().groupby(['Site']).height.mean()
Site
SOAP 15.102355
Name: height, dtype: float64
元数据类型可能会导致这种情况。当我扩展我的工作流程时,我想对持久化数据执行分布式操作。
【问题讨论】:
标签: pandas dask geopandas dask-delayed