[英]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.