Ich verstehe mein Ergebnis nach der Verwendung von findAssocs in R nicht [Duplikat]

StackOverflow https://stackoverflow.com//questions/23024686

  •  21-12-2019
  •  | 
  •  

Frage

Ich habe einen Datensatz mit Tweets.Ich suche nach dem niederländischen Wort „verhuizen“.Wenn ich den folgenden Code ausführe, erhalte ich aus meinem Datensatz zwei Tweets, die das Wort enthalten.

Aah_verhuizen=Aa_en_Hunze[grepl('verhuizen', Aa_en_Hunze$twt_txt),]

[1] @Isaa_0592 verhuizen?Waarheen dan?

[2] Ja, die Schule ist hier im Dorf, jetzt können wir dieses Jahr nicht mehr sehen!??

Dann führe ich den Code aus, um mithilfe von findAssocs des Pakets tm das am häufigsten mit „verhuizen“ verknüpfte Wort zu finden.

verhuizen <- c('verhuizen')
Aah.corpus <- Corpus(VectorSource(Aa_en_Hunze$twt_txt))
Aah.corpus <- tm_map(Aah.corpus, tolower) 
Aah.corpus <- tm_map(Aah.corpus, removePunctuation)
Aah.dtm <- TermDocumentMatrix(Aah.corpus)
Aah_ass_verhuizen <- findAssocs(Aah.dtm, verhuizen, 0.10)

Mein Ergebnis dieses Codes ist:

Wert 0,58

dorp 0,24

isaa0592 0,24

gebeuren 0,22

Blijft 0,15

Ich weiß nicht, wie findAssocs die Ergebnisse berechnet.Zum Beispiel:Warum erhält das Wort „Waarheen“ eine so hohe Punktzahl?Es wird nur einmal in einem der beiden Tweets erwähnt.Ich verstehe nicht, wie findAssocs die Bewertungen für die zugehörigen Wörter berechnet.Ich habe die Hilfefunktion, Google und Stackoverflow durchsucht, aber keine zufriedenstellende Antwort gefunden.Weiß jemand?

Ich denke, die Antwort, die ich suche, liegt in den folgenden Codezeilen.Was ich aus der folgenden Frage herausgefunden habe.

Mathematik von tm::findAssocs, wie funktioniert diese Funktion?

function (x, term, corlimit) 
sort(round(x[term, which(x[term, ] > corlimit)], 2), decreasing = TRUE)
<environment: namespace:tm>

Was tut es?Ich werde versuchen, es selbst herauszufinden, indem ich Teile des Satzes wiederhole.

test <- Aah.dtm['verhuizen', which(Aah.dtm['verhuizen', ]> 0.10)],2

Warum erhalte ich die folgende Fehlermeldung?

Fehler:unerwartetes ',' in "test <- Aah.dtm['verhuizen', which(Aah.dtm['verhuizen', ]> 0.10)],"

War es hilfreich?

Lösung

Wenn Sie wissen möchten, wie die Funktion funktioniert, schauen Sie sich am einfachsten die Dokumentation an.Die Hauptseite ist Hier, mit einer Funktionsreferenz Hier und eine schöne Vignette Hier.

Wenn Ihnen diese nicht genügend Details liefern, können Sie jederzeit die Seite konsultieren Quellcode, das zufällig unter der GPL verfügbar ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top