2017-06-20 2 views
3

Ich möchte R für die Textklassifizierung verwenden. Ich benutze DocumentTermMatrix die Matrix des Wortes zurück:Verwenden Sie DocumentTermMatrix in R mit "Wörterbuch" -Parameter

library(tm) 
crude <- "japan korea usa uk albania azerbaijan" 
corps <- Corpus(VectorSource(crude)) 
dtm <- DocumentTermMatrix(corps) 
inspect(dtm) 

words <- c("australia", "korea", "uganda", "japan", "argentina", "turkey") 
test <- DocumentTermMatrix(corps, control=list(dictionary = words)) 
inspect(test) 

Die erste inspect(dtm) Arbeit als mit Ergebnis erwartet:

Terms 
Docs albania azerbaijan japan korea usa 
    1  1   1  1  1 1 

Aber die zweiten inspect(test) zeigt dieses Ergebnis:

Terms 
Docs argentina australia japan korea turkey uganda 
    1   0   1  0  1  0  0 

Während der erwartetes Ergebnis ist:

Terms 
Docs argentina australia japan korea turkey uganda 
    1   0   0  1  1  0  0 

Ist es ein Fehler oder verwende ich den falschen Weg?

Antwort

1

Corpus() scheint einen Fehler beim Indexieren der Worthäufigkeit zu haben.

Verwenden Sie stattdessen VCorpus(), damit erhalten Sie das erwartete Ergebnis.

Verwandte Themen