[英]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.