我使用r
包tm
中的VCorpus()
函數。這裏的問題是我有使用VCorpus()函數但丟失內容
example_text = data.frame(num=c(1,2,3),Author1 = c("Text mining is a great time.","Text analysis provides insights","qdap and tm are used in text mining"),Author2=c("R is a great language","R has many uses","DataCamp is cool!"))
這看起來像
num Author1 Author2
1 1 Text mining is a great time. R is a great language
2 2 Text analysis provides insights R has many uses
3 3 qdap and tm are used in text mining here is a problem
然後我鍵入df_source = DataframeSource(example_text[,2:3])
只提取最後2列。
df_source
看起來正確。在那之後,我做了df_corpus = VCorpus(df_source)
和df_corpus[[1]]
是
<<PlainTextDocument>>
Metadata: 7
Content: chars: 2
而且df_corpus[[1]]
給我
$content
[1] "3" "3"
但df_corpus[[1]]
應該返回
<<PlainTextDocument>>
Metadata: 7
Content: chars: 49
而且df_corpus[[1]][1]
應該返回
$content
[1] "Text mining is a great time." "R is a great language"
我不知道哪裏出了問題。任何建議將不勝感激。
從'help(DataframeSource)',數據幀源將數據幀x的每一行解釋爲一個文檔。我認爲你應該將每個句子當作一個文檔來處理,並且必須在使用'DataframeSource'之前將數據框轉換爲6行,1列(句子)。 – kitman0804
@ kitman0804這是一個'datacamp'互動練習。我在網絡瀏覽器中這樣做了,它正確地輸出了預期的結果。但是,當我在筆記本電腦上的r studio中執行此操作時,會產生此問題。 – ftxx
當您創建'example_text'時,添加參數'stringsAsFactors = FALSE',那麼一切都會正常工作。 – kitman0804