我有一个基本 CSV。它在来源中:311-Service 该库大约有 11 GB。它有 1900 万行和 41 列。
我只想获取有关城市的信息:新泽西州表格列城市。 我只能对 500,000 行使用此查询。它有效!
NYPD = pd.read_csv('c:/1/311_Service_Requests_from_2010_to_Present.csv', nrows=500000, low_memory=False)
M = NYPD.loc[NYPD.City=='NEW JERSEY', :]
M.to_csv('c:/1/NJ_NYPD.csv')
我需要 CSV 文件所有行的信息,而不仅仅是 500 000 行的信息。 我想我需要使用循环和 chunksize = 500,000,但我不知道如何。
hunksize =500000
i = 0
j = 1
for df in pd.read_csv('c:/1/311_Service_Requests_from_2010_to_Present.csv', chunksize=chunksize, iterator=True, low_memory=False):
df.loc[df.City=='NEW JERSEY', :]
df.index += j
i+=1
df.to_csv('c:/1/NJ_NYPD.csv')
我不想将 CSV 转换为 dbase 方法。
最佳答案
为什么不在解析时使用所需的列:
my_filtered_csv = pd.read_csv(filename, usecols=['City'])
关于python - 如何循环读取巨型CSV文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54800084/