Pandas合并重复作者列并计算收视率均值问题求助
解决DataFrame作者列重复分组失败的问题
你推测的原因完全正确——作者名称前后的空白字符导致分组时被判定为不同的键,无法合并计算均值。以下是具体解决步骤:
第一步:清理
Writers列的前后空白
使用Pandas的str.strip()方法去除字符串首尾的空格、换行符等空白字符:df2['Writers'] = df2['Writers'].str.strip()第二步:重新执行分组聚合
此时再运行分组计算均值的代码,就能正确合并重复作者:mean = df2.groupby(['Writers'])['Viewership'].mean() print(mean)
简化写法(链式调用)
如果想减少代码行数,同时保留原DataFrame的原始数据,可以将两步合并为一行:
mean = df2.assign(Writers=df2['Writers'].str.strip()).groupby(['Writers'])['Viewership'].mean()
这样处理后,所有带前后空白的作者名称都会被标准化,分组时就不会出现重复项,能准确计算每个作者对应的收视率均值。
内容的提问来源于stack exchange,提问作者mattgg01
相关产品推荐
相关产品推荐

