[英]Python: which is the best way to read large .csv file?
我必须阅读大约20MB
.csv
。 这些文件是由8
列和5198
行组成的表。 我必须对特定列I
进行一些统计。
我有n
不同的文件,这是我在做什么:
stat = np.arange(n)
I = 0
for k in stat:
df = pd.read_csv(pathS+'run_TestRandom_%d.csv'%k, sep=' ')
I+=df['I']
I = I/k ## Average
这个过程需要0.65s
,我想知道是否有最快的方法。
编辑:显然,这是一种非常糟糕的方法! 不要做我想像的事:/
我现在正在使用大小相同的数据集解决类似的问题。 我正在使用的方法是numpy的genfromtxt
import numpy as np
ary2d = np.genfromtxt('yourfile.csv', delimiter=',', skip_header=1,
skip_footer=0, names=['col1', 'col2', 'col3', 'col4', 'col5', 'col6', 'col7', 'col8'])
在我的系统上,时间总计约为0.1秒
这样做的一个问题是,非数值的任何值都将简单地替换为nan
,而这可能不是您想要的值
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.