给定一个csv文件
A,0,0,1,0
B,0,0,1,0
C,0,0,1,0
D,0,0,1,0
E,0,0,1,0
F,0,0,0,1
我想计算每列的总数。有没有一种比以下方法更具吸引力或更有效的方法来做到这一点:
import csv
totals = [0]*4
for row in csv.reader(csvfile):
counts = [ int(x) for x in row[-4:] ]
totals = [ sum(x) for x in zip(counts, totals) ]
print(totals)
您可以使用numpy的^{} 读取文件,然后对索引列和数组进行切片^{} :
给出:
以下是一种无需外部LIB即可完成工作的综合方法:
事先转置csv文件,跳过现在的标题列,只计算每行的总和
不过,在扩展
zip
的参数时要小心,因为它会将整个文件加载到内存中相关问题 更多 >
编程相关推荐