python - 列的 Dask Dataframe 总和始终返回标量
问题描述
我创建了一个 Dask Dataframe(称为“df”),索引为“11”的列具有整数值:
In [62]: df[11]
Out[62]:
Dask Series Structure:
npartitions=42
int64
...
...
...
...
Name: 11, dtype: int64
Dask Name: getitem, 168 tasks
我试图将这些总结为:
df[11].sum()
我得到dd.Scalar<series-..., dtype=int64>
回报。尽管研究了这可能意味着什么,但我仍然对为什么没有返回数值存在分歧。我怎样才能把它翻译成它的数值?
解决方案
我认为您需要compute
告诉Dask
处理之前的所有内容:
计算(**kwargs)
计算这个 dask 集合这会将惰性 Dask 集合转换为内存中的等价物。例如,一个 Dask.array 变成一个 numpy.array() 并且一个 Dask.dataframe 变成一个 Pandas 数据帧。在调用此操作之前,整个数据集必须适合内存。
df[11].sum().compute()
推荐阅读
- python - 为什么我的 autorole bot 可以在我的服务器上运行,而在其他服务器上不行?
- .net - VB.NET - MsDb2 查询持续时间
- c++ - 带有双括号的 C++ if 语句有什么作用?
- javascript - 为什么在类方法中使用 ES6 的 Proxy 不起作用?
- css - WOFF webfont 生成器生成大量垃圾(可能是原始字体)数据
- vba - 输出哪些 Excel 文件受密码保护
- php - 将数据颤动应用程序发布到 postgresql db php
- swift - 有没有办法检查信息面板当前是否在 AVPlayerViewController 中切换?
- certificate - 一个 rfc5280 证书中可以有多个相同的 CHOICE 字段吗?
- python-3.x - 如何删除在 python3 字符串对象中显示为 `\uxxx` 的特殊字符?