我試圖使用包tm
過濾來自以下文檔的停用詞。包tm停止詞參數
library(tm)
documents <- c("the quick brown fox jumps over the lazy dog", "i am the walrus")
corpus <- Corpus(VectorSource(documents))
matrix <- DocumentTermMatrix(corpus,control=list(stopwords=TRUE))
然而,當我運行此代碼,我仍然可以在DocumentTermMatrix
以下。
colnames(matrix)
[1] "brown" "dog" "fox" "jumps" "lazy" "over" "quick" "the" "walrus"
「的」被列爲停止詞列表中的那個包tm
用途。我在stopwords
參數上做錯了什麼,或者這是tm
軟件包中的錯誤?
編輯:我接觸英戈Feinerer,他指出,這在技術上是不是一個錯誤:
用戶提供的選項被首先處理,然後將所有剩餘的 選項。因此,在標記化之前完成停用詞的刪除(因爲Vincent Zoonekynd在stackoverflow.com上已經編寫了 ),因此 就是您的結果。
因此,解決的辦法是明確列出前stopwords
參數的默認符號化的選項,例如:
library(tm)
documents <- c("the quick brown fox jumps over the lazy dog", "i am the walrus")
corpus <- Corpus(VectorSource(documents))
matrix <- DocumentTermMatrix(corpus,control=list(tokenize=scan_tokenizer,stopwords=TRUE))
colnames(matrix)
感謝您的問題和答案......雖然他們都沒有在我的問題上工作。似乎TM中的停用詞在這個時候只是一個頭痛的問題。 –