我試圖找到同時出現在多個文檔中的單詞。以相同的方式處理由空格分隔的單詞
讓我們舉一個例子。
doc1: "this is a document about milkyway"
doc2: "milky way is huge"
正如你可以看到上述2個文件,字「銀河」是發生在兩個文檔但在第二文檔術語「銀河」是由一個空間和在第一DOC中分離它不是。
我做以下,以獲得文檔詞矩陣R.
library(tm)
tmp.text <- data.frame(rbind(doc1, doc2))
tmp.corpus <- Corpus(DataframeSource(tmp.text))
tmpDTM <- TermDocumentMatrix(tmp.corpus, control = list(tolower = T, removeNumbers = T, removePunctuation = TRUE,stopwords = TRUE,wordLengths = c(2, Inf)))
tmp.df <- as.data.frame(as.matrix(tmpDTM))
tmp.df
1 2
document 1 0
huge 0 1
milky 0 1
milkyway 1 0
way 0 1
期限milkyway
只出現在第一文檔按上述矩陣。
我希望能夠在上述矩陣中的術語「milkyway」的文檔中都獲得1。這只是一個例子。我需要爲許多文件做這件事。最終,我希望能夠以類似的方式對待這些詞(「銀河」&「銀河系」)。
編輯1:
我不能強迫得到這樣的方式,對於任何講它正試圖尋找它不應該僅僅尋找那些單詞作爲計算術語文檔矩陣單詞中的字符串,但也在字符串內?例如,一個術語是milky
,並且有一個文檔this is milkyway
,因此這裏當前的milky
不會在此文檔中出現,但是如果算法在字符串內查找有問題的單詞,它還會在字符串milkyway
內找到字milky
,那樣字milky
和way
將被計入我的兩份文件(前面的例子)。
編輯2:
最終我想能夠計算出文檔之間的相似性餘弦指數。
也許刪除空格,然後使用正則表達式? – zx8754
您是否只需要爲「銀河系」或其他人執行此操作?你喜歡他們都是'銀河'嗎? –
@ sebastian-c我需要爲多個單詞做這件事。我更喜歡以某種方式成爲「銀河」。可能會有像「每天」和「每一天」的情況。在這種情況下,我寧願他們是「每天」。 – user3664020