[英]Count All Occurrences of a Specific Value in a Dask Dataframe
我有一個 dask dataframe 有數千列和行,如下所示:
pprint(daskdf.head())
grid lat lon ... 2014-12-29 2014-12-30 2014-12-31
0 0 48.125 -124.625 ... 0.0 0.0 -17.034216
1 0 48.625 -124.625 ... 0.0 0.0 -19.904214
4 0 42.375 -124.375 ... 0.0 0.0 -8.380443
5 0 42.625 -124.375 ... 0.0 0.0 -8.796803
6 0 42.875 -124.375 ... 0.0 0.0 -7.683688
我想計算整個 dataframe 中出現某個值的所有事件。 在 pandas 中,可以按如下方式進行:
pddf[pddf==500].count().sum()
我知道您無法使用 dask 翻譯所有 pandas 函數/語法,但是我將如何使用 dask dataframe 來做到這一點? 我試着做:
daskdf[daskdf==500].count().sum().compute()
但這產生了“未實現”錯誤。
在許多情況下,如果存在尚未在 dask 中顯式實現的逐行 pandas 方法,則可以使用map_partitions
。 在這種情況下,這可能看起來像:
ppdf.map_partitions(lambda df: df[df==500].count()).sum().compute()
您可以嘗試在 lambda 中執行.sum()
是否有幫助(它會產生更小的中介)以及map_partition
的meta=
參數應該是什么樣子。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.