运行代码后显示AttributeError: 'list' object has no attribute 'get'
时间: 2023-07-30 16:05:35 浏览: 134
python报错: 'list' object has no attribute 'shape'的解决
5星 · 资源好评率100%
这个错误是因为您尝试在一个列表对象上调用`get`方法,但是列表对象并没有`get`方法。根据您提供的信息,这个问题可能出现在同义替换的部分代码。您可以尝试使用字典的`get`方法来替换列表的`get`方法。
下面是修改后的示例代码:
```python
import pandas as pd
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt
from collections import Counter
# 读取CSV文件
data = pd.read_csv("C:\\Users\\Administrator\\Desktop\\test1.csv")
# 合并文本数据为一个字符串
text = " ".join(data["专利技术功效"])
# 停用词列表,可以根据需要自定义
stopwords = ["的", "了", "是", "一", "在", "等"]
# 分词并去除停用词
word_list = jieba.cut(text)
word_list = [word for word in word_list if word not in stopwords]
# 同义替换(可根据需要进行扩展)
synonyms = {"技术": "创新", "功效": "效果"}
word_list = [synonyms.get(word, word) for word in word_list]
# 统计词频
word_count = Counter(word_list)
# 创建词云对象
wordcloud = WordCloud(width=800, height=400, background_color="white")
wordcloud.generate_from_frequencies(word_count)
# 绘制词云图
plt.figure(figsize=(10, 5))
plt.imshow(wordcloud, interpolation="bilinear")
plt.axis("off")
plt.show()
# 打印词频统计结果
print(word_count.most_common())
```
这样修改后,应该可以解决`AttributeError: 'list' object has no attribute 'get'`的问题。如果还有其他问题,请随时提问。
阅读全文