在python中使用csv.dictreader函数时,是否有方法读取.csv文件的某些行?
例如,如果只想加载.csv文件的第10-20行
不在整个数据集中加载
第一。
我有几个.csv文件,每个文件有2亿行,包含10个字段名数据条目-因此我使用的是dictreader,而不是简单的csv.read()。
下面是我当前方法的一个简单示例:
import csv
from tqdm import tqdm
field_names = ['A','B','C']
IDs = []
with open(file_1) as f:
reader = csv.DictReader(f,field_names,delimiter=',')
row_count = 0
for row in tqdm(reader):
row_count+=1
ID = row['A']
if ID not in IDs == True:
IDs.append(ID)
您可以看到,对于2亿行的迭代来说,这会很慢,而且循环中的任何进一步条件或处理都会大大减慢它的速度。
因此,遍历一组行,然后对它们进行多线程处理以节省时间是有意义的。
我考虑过的事情:
多谢提前!