如何将pandas groupby统计结果写入Excel对应列的单元格中
你可以按以下步骤实现统计结果写回原表对应位置:
- 你通过
transform得到的NumberOfBooking和原DataFrame行数、顺序完全一致,可直接赋值给新列:
df['numberOfBooking'] = NumberOfBooking
NumberOfChild是按Parent ID聚合得到的结果,索引为Parent ID,可以通过映射匹配的方式写入原表对应行:
df['numberOfChild'] = df['Parent ID'].map(NumberOfChild['Employees Number'])
如果想要提升大文件的处理效率,也可以把两次groupby合并为一次,减少计算开销:
# 一次groupby同时计算两个指标 grouped = df.groupby('Parent ID').agg( numberOfChild=('Parent ID', 'count'), numberOfBooking=('Reservations Count', 'sum') ).reset_index() # 合并回原表 df = df.merge(grouped, on='Parent ID', how='left')
最后需要导出结果到Excel的话,执行以下代码即可:
df.to_excel("output.xlsx", engine='openpyxl', index=False)
内容的提问来源于stack exchange,提问作者Saeed
相关产品推荐
相关产品推荐

