词云没有正确显示单词的频率
word cloud does not show the frequency of the words correctly
我已经在词云中绘制了我的文本数据。
这是我的数据框
vocab sumCI
aid 3
tinnitu 3
sudden 3
squamou 3
saphen 3
problem 3
prednison 3
pain 2
dysuria 3
cancer 2
然后我把它转换成这样的字符串。 (实际上,我已经复制了每个单词在我的数据框中出现的次数,然后将其提供给函数):
aid aid aid tinnitu tinnitu tinnitu sudden sudden sudden squamou squamou squamou
然后我使用这段代码来可视化文本数据:
def generate_wordcloud(text): # optionally add: stopwords=STOPWORDS and change the arg below
wordcloud = WordCloud(
background_color="white",
width=1200, height=1000,
relative_scaling = 1.0,
collocations=False
).generate(text)
plt.imshow(wordcloud)
plt.axis("off")
plt.show()
cidf=cidf.loc[cidf.index.repeat(cidf['sumCI'])].reset_index(drop=True)
strCI = ' '.join(cidf['vocab'])
print(strCI)
generate_wordcloud(strCI)
然后结果是这样的:
如你所见,大多数单词都重复了 2 或 3 次,但它们在词云中的大小并未显示这一点。即使是同样大小的字,大小也有很大的差别!
例如:
例如看看这个数据框中的“耳鸣”和“排尿困难”,它们的频率都是3,耳鸣很大但是排尿困难你会发现它非常小,所以很难。
谢谢:)
好吧,我通过搜索 alooot 弄明白了。我最终使用 generate_from_frequencies(text)
而不是仅使用生成。
但是仍然在频率相同的情况下,它不会给所有的人相同的大小。
如果你看文档,他们也提到了排名或顺序(这是我真的无法理解的东西,他们最好把它作为一个选项。例如,如果算法看到相同的频率是什么应该是方法 1. 基于顺序 2. 什么都不做并给出相同的大小)。
根据我的研究和输出,当它看到相同的频率并且还基于它具有的 space 时,它可能会改变大小,这是不好的。
我的说法仅基于我的实验和阅读文档。
我已经在词云中绘制了我的文本数据。 这是我的数据框
vocab sumCI
aid 3
tinnitu 3
sudden 3
squamou 3
saphen 3
problem 3
prednison 3
pain 2
dysuria 3
cancer 2
然后我把它转换成这样的字符串。 (实际上,我已经复制了每个单词在我的数据框中出现的次数,然后将其提供给函数):
aid aid aid tinnitu tinnitu tinnitu sudden sudden sudden squamou squamou squamou
然后我使用这段代码来可视化文本数据:
def generate_wordcloud(text): # optionally add: stopwords=STOPWORDS and change the arg below
wordcloud = WordCloud(
background_color="white",
width=1200, height=1000,
relative_scaling = 1.0,
collocations=False
).generate(text)
plt.imshow(wordcloud)
plt.axis("off")
plt.show()
cidf=cidf.loc[cidf.index.repeat(cidf['sumCI'])].reset_index(drop=True)
strCI = ' '.join(cidf['vocab'])
print(strCI)
generate_wordcloud(strCI)
然后结果是这样的:
如你所见,大多数单词都重复了 2 或 3 次,但它们在词云中的大小并未显示这一点。即使是同样大小的字,大小也有很大的差别!
例如:
例如看看这个数据框中的“耳鸣”和“排尿困难”,它们的频率都是3,耳鸣很大但是排尿困难你会发现它非常小,所以很难。
谢谢:)
好吧,我通过搜索 alooot 弄明白了。我最终使用 generate_from_frequencies(text)
而不是仅使用生成。
但是仍然在频率相同的情况下,它不会给所有的人相同的大小。
如果你看文档,他们也提到了排名或顺序(这是我真的无法理解的东西,他们最好把它作为一个选项。例如,如果算法看到相同的频率是什么应该是方法 1. 基于顺序 2. 什么都不做并给出相同的大小)。
根据我的研究和输出,当它看到相同的频率并且还基于它具有的 space 时,它可能会改变大小,这是不好的。
我的说法仅基于我的实验和阅读文档。