1
ferstar 2017-08-10 16:03:15 +08:00
刚好手上有个类似的数据集,唯一与楼主不同的是每一行是一个[100, 150]的整数,我是这样统计的:
--- ```python from collections import Counter import pandas as pd size = 2 ** 10 counter = Counter() for chunk in pd.read_csv('file.csv', header=None, chunksize=size): counter.update([i[0] for i in chunk.values]) print(counter) ``` --- 大概输出如下: ``` Counter({100: 41, 101: 40, 102: 40, ... 150: 35}) ``` |
2
caomaocao 2017-08-10 16:33:30 +08:00
Counter() 或者 Mapreduce 的思想做哦~
|
3
chuanqirenwu 2017-08-10 19:18:38 +08:00
dask 一行搞定。
dd.groupby().count(),和 pandas 一样的 API,但是把 fill in memory 拓展到 fill in disk。 |
4
zhusimaji 2017-08-10 19:22:59 +08:00 via iPhone
Counter 可以试试,有分布式观景首选 mapreduce
|
5
zhusimaji 2017-08-10 19:24:08 +08:00 via iPhone
分布式环境
|
6
zhusimaji 2017-08-10 19:33:11 +08:00 via iPhone
@chuanqirenwu 学习新姿势,一般数据量大都是实用 spark 完成计算,刚去看了下 dask,不错的包
|
7
liprais 2017-08-10 19:43:35 +08:00 via iPhone
sort | uniq -c
|
8
notsobad 2017-08-10 19:44:57 +08:00
用 shell 比较简单
cat x.txt | sort | uniq -c |