在写入CSV文件时,如何在Python中按结果分组显示列名?

在写入CSV文件时,如何在Python中按结果分组显示列名?,python,pandas,Python,Pandas,我有这样的输入数据 ID days 1 02 1 24 2 12 3 10 csv文件中的预期结果应为 ID Avg. days 1 13 2 12 3 10 用我的代码,我只能得到平均值,不能得到ID。但我需要两者 ID = tempx.groupby('ID')['days'].mean() ID.to_csv("file1.csv", sep=',',encoding='utf-8',index = False) 是否有人可以帮助我如何使用group by result

我有这样的输入数据

ID days
1  02
1  24
2  12
3  10
csv文件中的预期结果应为

ID Avg. days
1  13
2  12
3  10
用我的代码,我只能得到平均值,不能得到ID。但我需要两者

ID = tempx.groupby('ID')['days'].mean()
ID.to_csv("file1.csv", sep=',',encoding='utf-8',index = False)
是否有人可以帮助我如何使用group by result将列作为标题?

我想您需要参数
名称

ID = tempx.groupby('ID')['days'].mean().reset_index(name='Avg. days')
print (ID)
   ID  Avg. days
0   1         13
1   2         12
2   3         10

ID.to_csv("file1.csv", sep=',',encoding='utf-8',index = False)

不通过
index=False

tempx.groupby('ID').days.mean().to_frame('Avg. days').to_csv(
    'file.csv', encoding='utf-8')
ID = tempx.groupby('ID', as_index = False)['days'].mean()
ID.to_csv("file1.csv", sep=',',encoding='utf-8',index = False)
.groupby('ID')
'ID'
设置为索引。按如下方式保存文件:

ID = tempx.groupby('ID')['days'].mean()
ID.to_csv("file1.csv", sep=',',encoding='utf-8',index = True)
或使用
as_index=False的groupby

tempx.groupby('ID').days.mean().to_frame('Avg. days').to_csv(
    'file.csv', encoding='utf-8')
ID = tempx.groupby('ID', as_index = False)['days'].mean()
ID.to_csv("file1.csv", sep=',',encoding='utf-8',index = False)

可能需要
encoding='utf-8'
亲爱的肯,谢谢你的支持。删除index=False后,它正在工作。现在我可以在我的csv文件中看到标题。@Sekhar如果该用户的答案对您有效,请单击灰色复选框将其切换为绿色,以接受该答案。