我有一个 3.6 亿的鸟类观测数据记录数据 框,我想以dask分布式方式计算每个鸟类物种的质心作为年日的函数。我想要做:df2 = df.groupby(['VERNACULARNAME', 'yearday']).mean()但我需要先计算yearday,我不知道是否有办法用dask. 我希望 dask 可以将新数据保存给dask工作人员,但是当我尝试时:def yearday(r): r['yearday'] = dt.datetime(r['YEAR'], r['MONTH'], r['DAY']).timetuple().tm_yday return rdf.apply(yearday, axis=1).persist()它没有规模。如果有人想实际尝试,可以像这样加载数据:import dask.dataframe as dddf = dd.read_parquet('s3://esipfed/ebird/EOD_CLO_2016.parq.gz', storage_options={'anon': True, 'use_ssl': False})注意:虽然我称这个数据集为EOD_CLO_2016.parq.gz,但它在 S3 存储桶中的许多对象上分块以促进并行化。每个块都被 gzip 压缩。有没有办法以分布式方式即时进行这种计算,或者我是否需要在groupby用于执行可扩展部分之前用 yearday 列编写另一个数据文件?
添加回答
举报
0/150
提交
取消