如何基于Pandas DataFrame生成day_of_week对应births总和的字典?
解决方法:一行Pandas代码生成目标字典
嘿,你要的这个需求其实用Pandas的分组聚合功能就能轻松搞定,完全不用手动逐个计算再拼接字典,一行代码就能解决:
births_by_day = df_dummy.groupby('day_of_week')['births'].sum().to_dict()
代码说明:
groupby('day_of_week'):按照day_of_week的唯一数值对数据分组['births'].sum():对每个分组内的births列计算总和.to_dict():直接把聚合后的Series转换成你需要的字典格式,键就是day_of_week的数值,值对应对应日期的births总和
用你提供的模拟数据测试,得到的结果会是:
{1: 45121, 2: 324, 3: 3498, 4: 84804, 5: 34885, 6: 30827, 7: 8923}
这样就完美实现了你想要的功能,比手动逐个计算高效太多啦!
内容的提问来源于stack exchange,提问作者RichardS
相关产品推荐
相关产品推荐

