import csv
from collections import Counter
from itertools import imap
from operator import itemgetter
with open('yourcsv') as f:
next(f) # skip the header
cn = Counter(imap(itemgetter(2), csv.reader(f)))
for t in cn.iteritems():
print("{} appears {} times".format(*t))
open
从外部读取文件,而不是StringIO检查新代码:
您可以在不存储任何中介列表的情况下执行此操作:
没有理由在列表中存储数据,除非您计划使用该列表,
itemgetter
将只从每行中提取第三列值。您需要传递任何要计数的列,并将分隔符设置为任何分隔数据的列。在如果您只需要执行一次,并且您使用的是UNIX机器,那么您也可以使用优秀的命令行工具。数词就简单到
要在输出文件中存储这些值,请使用
^{pr2}$有关命令行何时可以比hadoop集群更快(最多235x)和更简单的讨论,请参见http://aadrake.com/command-line-tools-can-be-235x-faster-than-your-hadoop-cluster.html。在
相关问题 更多 >
编程相关推荐