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

基于Pandas按产品组类别统计并可视化词频的技术咨询

按产品组统计评论高频词汇的实现方案

没问题!我来帮你搞定按产品组统计词频的需求,用Pandas就能轻松实现,下面是具体步骤和代码:

步骤1:预处理评论文本(可选但推荐)

首先统一文本格式,避免大小写、标点导致的词频统计误差,比如把所有评论转小写、去除标点:

import pandas as pd

# 假设你的数据集是df,列名为"产品组"和"评论"
df['评论'] = df['评论'].str.lower().str.replace('[^\w\s]', '', regex=True)

步骤2:拆分词汇并展开为单行

把每条评论里的词汇拆分成单独的行,这样才能按产品组进行分组统计:

# 拆分评论为词汇列表,然后展开成每行一个词汇
df_exploded = df.assign(词汇=df['评论'].str.split()).explode('词汇')

# 过滤掉拆分后可能出现的空白词汇
df_exploded = df_exploded[df_exploded['词汇'].str.strip() != '']

步骤3:按产品组统计词频

现在可以分组统计每个产品组下的词汇频率了:

# 按产品组分组,统计每个组内的词汇出现次数
grouped_word_counts = df_exploded.groupby('产品组')['词汇'].value_counts()

# 查看结果,比如查看产品组"1"的词频
print(grouped_word_counts.loc['1'])

进阶:获取每个产品组的Top N高频词汇

如果想直接得到每个产品组出现频率最高的前N个词汇(比如Top5),可以这样写:

# 统计每个(产品组,词汇)的出现次数,再取每个组的Top5
top_words_per_group = df_exploded.groupby(['产品组', '词汇']).size() \
                                .groupby(level=0).nlargest(5) \
                                .reset_index(level=0, drop=True)

# 输出结果
print(top_words_per_group)

这样就能精准得到每个产品组下的高频词汇啦,如果你的评论文本有特殊格式(比如包含停用词需要过滤),可以再补充停用词移除的步骤,比如用nltk的停用词库过滤~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 04:25:53