You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何对数据分组求和并返回总和最大的分组结果

问题原因

你用的sum()是对数值列做求和运算,你的news_title是字符串类型,无法执行求和计算,自然拿不到你要的计数结果。

正确实现方法

方案1:直接用value_counts()(更简便)

value_counts()是pandas专门用来统计字段值出现频次的方法,默认会按频次从高到低排序:

# 统计各公司出现频次
company_counts = df["company"].value_counts()
# 取频次最高的公司和对应次数
top_company, top_times = company_counts.index[0], company_counts.iloc[0]
# 输出结果
print(f"{top_company} 在新闻中被提及的次数最多 - {top_times} 次")

用你给出的样例数据跑这段代码,输出结果为:Facebook 在新闻中被提及的次数最多 - 3 次

方案2:用groupby实现

如果一定要用groupby语法,要把sum()换成count()做计数运算:

# 按公司分组统计新闻条目数
company_counts = df.groupby("company")["news_title"].count().sort_values(ascending=False)
top_company, top_times = company_counts.index[0], company_counts.iloc[0]
print(f"{top_company} 在新闻中被提及的次数最多 - {top_times} 次")

内容的提问来源于stack exchange,提问作者Domi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 15:06:03