繁体   English   中英

Dask Dataframe:获取行数?

[英]Dask Dataframe: Get row count?

简单的问题:我在 dask 中有一个包含大约 3 亿条记录的数据框。 我需要知道数据帧包含的确切行数。 是否有捷径可寻?

当我尝试运行dataframe.x.count().compute()它看起来像是尝试将整个数据加载到 RAM 中,但没有空间并且它崩溃了。

# ensure small enough block size for the graph to fit in your memory
ddf = dask.dataframe.read_csv('*.csv', blocksize="10MB") 
ddf.shape[0].compute()

文档

blocksize <str, int or None> 可选 分割较大文件的字节数。 默认值是根据可用物理内存和内核数计算的,最大为 64MB。 可以是像 64000000` 这样的数字或像“64MB”这样的字符串。 如果没有,则为每个文件使用单个块。

如果您只需要行数 -
您可以在选择内存使用率较低的列(例如类别/整数而不是字符串/对象)时加载列的子集,然后可以运行len(df.index)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM