我有一個字符串數據框,我想從中刪除停用詞。我試圖避免使用tm
包,因爲它是一個大型數據集,tm
似乎運行速度有點慢。我正在使用tm
stopword
字典。R使用%中的%來移除字符向量中的停用詞%
library(plyr)
library(tm)
stopWords <- stopwords("en")
class(stopWords)
df1 <- data.frame(id = seq(1,5,1), string1 = NA)
head(df1)
df1$string1[1] <- "This string is a string."
df1$string1[2] <- "This string is a slightly longer string."
df1$string1[3] <- "This string is an even longer string."
df1$string1[4] <- "This string is a slightly shorter string."
df1$string1[5] <- "This string is the longest string of all the other strings."
head(df1)
df1$string1 <- tolower(df1$string1)
str1 <- strsplit(df1$string1[5], " ")
> !(str1 %in% stopWords)
[1] TRUE
這不是我要找的答案。我試圖在stopWords
載體中得到一個載體或字符串NOT。
我在做什麼錯?
問題很明顯:string nbr 5在語法上不正確。 :-)。好吧,我認爲Arun是正確的,假設「單詞」嚴格意味着一串沒有空格的字符。在'df1 $ string'的所有元素上運行他的代碼後,如果你只是想要一個列表,而不是單詞的數量,你可以做'unique'。 – 2013-03-06 18:58:25