繁体   English   中英

从R中的词云中删除特定词

[英]Removing specific words from word cloud in R

我在R中造了2首歌的词云。 现在在tdm中显示项目时,我得到了歌曲1和歌曲2的词频。我也能够完美地打印词云。 我的问题是我不希望tdm中的频率小于2的单词。我该怎么做。

我编写了代码,并得到以下输出:

tdm=TermDocumentMatrix(corpus)

> tdm=as.matrix(tdm)
>
> tdm
>

song 1  song 2
act                   0  2
action                0  2
actions               0  1
activity              5  4

我只希望单词活动,因为在两首歌曲中单词活动都多次出现。 我的意思是我想删除词语,行动,行动,行动。 我怎样才能做到这一点 ?

您没有提供类似这样的数据:

data("crude")
tdm <- TermDocumentMatrix(crude)

x <- as.matrix(tdm)[, 1:2]
x[rowSums(apply(x, 2, ">", 1)) == 2, ]

说明: x <- as.matrix(tdm)[, 1:2]仅获得2列类似您的数据的数据,因此它什么也没做,只是需要制作看起来像您的数据,因为您没有提供任何数据。 这行apply(x, 2, ">", 1)说给我该语句的逻辑值大于1。然后用rowSums包装(逻辑值为TRUE = 1和FALSE = 0)。 等于2的值(我之前> 1 ,但这很草率)是您要寻找的条件。 我将逻辑索引与此输出x[GRAB_THE_ROWS, ] 您可以拆开每一步并自己运行代码,如下所示:

(step_1 <- apply(x, 2, ">", 1))
(step_2 <- rowSums(step_1))
(step_3 <- step_2 == 2)
x[step_3, ]

暂无
暂无

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

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