当前位置:   article > 正文

python读取超大csv文件_python – 读取一个巨大的.csv文件

python查看csv文件多大的代码

我目前正试图从Python 2.7中的.csv文件读取数据,最多1百万行和200列(文件范围从100mb到1.6gb)。我可以这样做(非常慢)对于300,000行以下的文件,但一旦我走上,我得到内存错误。我的代码看起来像这样:

def getdata(filename, criteria):

data=[]

for criterion in criteria:

data.append(getstuff(filename, criteron))

return data

def getstuff(filename, criterion):

import csv

data=[]

with open(filename, "rb") as csvfile:

datareader=csv.reader(csvfile)

for row in datareader:

if row[3]=="column header":

data.append(row)

elif len(data)<2 and row[3]!=criterion:

pass

elif row[3]==criterion:

data.append(row)

else:

return data

getstuff函数中的else子句的原因是所有符合条件的元素将一起列在csv文件中,所以我离开循环,当我得到它们以节省时间。

我的问题是:

>我如何能够使这个工作与更大的文件?

>有什么办法可以让它更快吗?

我的电脑有8GB RAM,运行64位Windows 7,处理器是3.40 GHz(不确定你需要什么信息)。

非常感谢任何帮助!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/210120
推荐阅读
相关标签
  

闽ICP备14008679号