python提取excel表里的微博用户评论的关键词,并把每个评论的提取次数和关键词保存至excel表里
时间: 2024-05-03 20:17:40 浏览: 161
可以使用Python中的pandas和jieba库来实现。具体步骤如下:
1. 使用pandas读取Excel表格,将评论内容读取出来。
```python
import pandas as pd
df = pd.read_excel('微博用户评论.xlsx')
comments = df['评论内容']
```
2. 使用jieba分词对评论内容进行分词,并过滤掉停用词。
```python
import jieba
import jieba.analyse
# 加载停用词表
jieba.analyse.set_stop_words('stopwords.txt')
# 分词并过滤停用词
keywords_list = []
for comment in comments:
keywords = jieba.analyse.extract_tags(comment, topK=10, withWeight=False, allowPOS=('n', 'v'))
keywords = [keyword for keyword in keywords if keyword not in stopwords]
keywords_list.append(keywords)
```
3. 统计每个关键词在所有评论中出现的次数,并将结果保存至字典中。
```python
keywords_dict = {}
for keywords in keywords_list:
for keyword in keywords:
if keyword in keywords_dict:
keywords_dict[keyword] += 1
else:
keywords_dict[keyword] = 1
```
4. 将统计结果写入Excel表格中。
```python
result = pd.DataFrame({'关键词': list(keywords_dict.keys()), '出现次数': list(keywords_dict.values())})
result.to_excel('微博用户评论关键词统计.xlsx', index=False)
```
完整代码如下:
```python
import pandas as pd
import jieba
import jieba.analyse
# 加载停用词表
jieba.analyse.set_stop_words('stopwords.txt')
# 读取Excel表格
df = pd.read_excel('微博用户评论.xlsx')
comments = df['评论内容']
# 分词并过滤停用词
keywords_list = []
for comment in comments:
keywords = jieba.analyse.extract_tags(comment, topK=10, withWeight=False, allowPOS=('n', 'v'))
keywords = [keyword for keyword in keywords if keyword not in stopwords]
keywords_list.append(keywords)
# 统计每个关键词在所有评论中出现的次数
keywords_dict = {}
for keywords in keywords_list:
for keyword in keywords:
if keyword in keywords_dict:
keywords_dict[keyword] += 1
else:
keywords_dict[keyword] = 1
# 将统计结果写入Excel表格
result = pd.DataFrame({'关键词': list(keywords_dict.keys()), '出现次数': list(keywords_dict.values())})
result.to_excel('微博用户评论关键词统计.xlsx', index=False)
```
阅读全文