我有一個 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
提交
取消