我有一个包含30列的大型CSV文件(超过7milion记录),其中列中的一些数据是短代码,例如“ORD”或从1到12的月份数。 我想编写一个循环,将这个csv文件划分为给定键上的较小的文件,例如我想创建12CSVs,其中名称作为月份的密钥(即my_csv_1.CSV,my_csv_2.CSV等)或者每个代码(my_csv_code1.CSV,my_csv_code2.CSV等)
这是我的尝试:
for i in range(1,len(my_csv.Month.unique())+1):
my_csv_i = my_csv[(my_csv['Month'] == i) | (my_csv['Month']==i)]
my_csv_i.to_csv
答案 0 :(得分:1)
您可以使用groupby
:
for k,g in df.groupby('Month'):
g.to_csv('my_csv_{}.csv'.format(k))