在python中有效地读取和验证csv文件

时间:2016-06-27 10:00:09

标签: python validation csv pandas

我有多个csv文件(< 10 G),我需要以内存有效的方式逐个验证文件。我的验证包括

1→文件正确分隔

2→验证某些列,如整数/小数

3→验证某些列的日期格式(例如,yyyy / MM / dd)。

目前我正在使用

with open(file_name, 'r') as myCSV:
        CSVreader = csv.reader(myCSV)
        for row in CSVreader:
                my_logic

并循环每一行并验证每行的条件。有没有更好的库/方法?我听说大熊猫不知道它是否有记忆效率。

1 个答案:

答案 0 :(得分:1)

我有一些类似的循环,永远使用熊猫,并通过使用这个技巧能够加快它的速度:

for row in dataframe:
    some logic over row.col1, row.col2, etc...

变为:

for (col1, col2, ...) in zip(dataframe.col1.values, dataframe.col2.values, ...):
    some logic over col1, col2, etc...

不确定内存如何,但能够使用64位版本的python处理相当大的文件。