我有一个数据框
df
,如下所示:
df
ID val
0 A 3
1 A 2
2 B 0
3 B 5
4 B 4
我想为每个用户保存不同的数据框。这就是我正在做的事情
for i in pd.unique(df['ID']):
tmp = df[df['ID']==i]
tmp.to_csv('%s.csv'%i)
但是我有一个非常大的数据框和 14k ID。我想知道是否有更好的方法。
我认为你的解决方案很好,这是替代方案:
for i, g in df.groupby('ID', sort=False):
g.to_csv('{}.csv'.format(i), index=False)
或用
f-string
s 解决:
for i, g in df.groupby('ID', sort=False):
g.to_csv(f'{i}.csv', index=False)