繁体   English   中英

wordcloud() 中的 freq = 参数有问题

[英]having issues with freq = argument in wordcloud()

我正在使用一个数据集,其中包含世界上所有国家的宪法序言(减去一两个)。 生成单个国家的词云并不具有挑战性,但我正在努力生成一个可视化所有国家的 20 个最常用词的词云。

我怀疑问题出在 wordcloud() 的频率参数上。

## create a data term matrix
dtm.all.df <- DocumentTermMatrix(all.pream)
    
## coerce dtm.ALL.df into a regular matrix

dtm.all.df.rm <- as.matrix(dtm.all.df)

## create the word cloud
wordcloud(colnames(dtm.all.df.rm), freq = dtm.usa.df.rm[1:718580], min.freq = 2, max.words = 20)

输出: if (min.freq > max(freq)) min.freq <- 0 中的错误:需要 TRUE/FALSE 的缺失值 site:stackoverflow.com

输入(dtm.all.df.rm)

structure(c(1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
1, 1, 1, 2, 1, 1, 2, 1), dim = c(1L, 25L), dimnames = list(Docs = "1", 
    Terms = c("america", "blessings", "common", "constitution", 
    "defense", "domestic", "establish", "form", "general", "insure", 
    "justice", "liberty", "ordain", "order", "people", "perfect", 
    "posterity", "promote", "provide", "secure", "states", "tranquility", 
    "union", "united", "welfare"))) 

编辑:好的,现在我真的很困惑,但我已经在一个单独的块中重写了代码。 据我所知,这是包装在另一个对象中的同一件事,但我得到了不同的输出。 当我尝试合并整个语料库时它是空白的 [1:155,]。 但是,访问单个文档可以正常工作。 包含多个文档也会生成一个词云,但我对输出持怀疑态度,如果我尝试包含 > ~10 个文档,则词云会变得更小(以字数计),直到我只得到一个词时 ~90。

dtm.all.TEST<- DocumentTermMatrix(all.pream)

dtm.all.TEST <- as.matrix(dtm.all.TEST)

## create the word cloud, for afghanistan constitution
wordcloud(words = colnames(dtm.all.TEST), freq = dtm.all.TEST[1,], min.freq = 3, max.words = 20)

输出

## create the word cloud, for all constitutions
wordcloud(words = colnames(dtm.all.TEST), freq = dtm.all.TEST[1:155,], min.freq = 3, max.words = 20)

EDIT2:也许我昨晚没有得到足够的睡眠,我终于注意到我在第一个代码块的 wordcloud() 中的输入有错误的对象。 但是,我仍然遇到报告的其他问题。 我敢肯定,很明显我对此很陌生...

如果我们消除一些论点,您的示例数据将起作用:

wordcloud(colmnames(dtm.all.df), dtm.all.df)

这将产生以下图:

云图

要获取数据的频率分布:

table(dtm.all.df)
# dtm.all.df
#  1  2 
# 22  3 

有 22 个频率为 1 的单词和 3 个频率为 2 的单词。将其与您的实际数据一起使用,看看什么最小范围是有意义的。 然后用它来看看你有多少单词:

length(colnames(dtm.all.df))
# [1] 25

样本数据只有 25 个单词。 严格来说, min.freq=max.words=是剪枝数据的不同方式。 您通常不需要同时使用两者。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM