根据 pandas 中的列值导出到 csv

Kum*_* AK 3 python dataframe python-3.x pandas

我有一个这样的df

user = pd.DataFrame({'User':['101','101','101','102','102','101','101','102','102','102'],'Country':['India','Japan','India','Brazil','Japan','UK','Austria','Japan','Singapore','UK'],'Count':[50,1,2,5,6,89,10.9,10,5,6]})
Run Code Online (Sandbox Code Playgroud)

并将每个用户数据导出到单独的 csv 文件中,如下所示

user_101 = user[user['User'] == '101']
user_102 = user[user['User'] == '102']

user_101.to_csv('user_101.csv',sep=',')
user_102.to_csv('user_102.csv',sep=',')
Run Code Online (Sandbox Code Playgroud)

如何自动执行此操作,而不是手动传递用户 ID,自动从用户列中选取值并导出到相应的用户名文件。谢谢

jpp*_*jpp 7

使用for带有groupby和 f 字符串的循环 (Python 3.6+):

for user_id, group in user.groupby('User'):
    group.to_csv(f'user_{user_id}.csv', sep=',')
Run Code Online (Sandbox Code Playgroud)