1

ドキュメントで最大のキャプチャクラスタリングを実行するには、ドキュメント用語マトリックスから類似性マトリックスを作成する必要があります。これまでのところ、距離行列の解を見つけただけです。distメソッドを試しましたが、間違った出力が表示されます。Rを使用して類似性マトリックスを作成する方法はありますか?私は次のコードにtmパッケージを使用しましたが、それに制限されていません。他に適切なパッケージがある場合は、お知らせください。これまでのコード:

install.packages("tm")
install.packages("rJava")
install.packages("Snowball")
install.packages("RWeka")
install.packages("RWekajars")
install.packages("XML")
install.packages("openNLP")
install.packages("openNLPmodels.en")

Sys.setenv(NOAWT=TRUE)

library(XML)
library(rJava)
library(Snowball)
library(RWeka)
library(tm)
library(openNLP)
library(openNLPmodels.en)

sample = c(
"cc ee aa", 
"dd bb ee",   
"bb cc ee dd",
"cc ee dd aa",
"bb ee",
"cc dd aa",
"bb cc aa",
"bb cc",
"cc ee dd"
)
print(sample)
corpus <- Corpus(VectorSource(sample))
inspect(corpus)

corpus <- tm_map(corpus, removeNumbers)
corpus <- tm_map(corpus, removePunctuation)
corpus <- tm_map(corpus, tolower)
corpus <- tm_map(corpus, removeWords, stopwords("english"))
corpus <- tm_map(corpus, stemDocument,language="english")
corpus <- tm_map(corpus, stripWhitespace)
corpus <- tm_map(corpus, tmTagPOS)
inspect(corpus)

dtm <- DocumentTermMatrix(corpus)
inspect(dtm)

# need to create similarity matrix here
dist(dtm, method = "manhattan", diag = FALSE, upper = FALSE)

指定されたサンプルの出力は次のようになります。

類似性マトリックス

類似性マトリックスは次のように定義されます。

if (i < j) 
    a[i][j] = sim[i][j] 
else 
    a[i][j] = 0 
4

0 に答える 0