Je ne comprends pas mon résultat après avoir utilisé findAssocs dans R [dupliquer]

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

  •  21-12-2019
  •  | 
  •  

Question

J'ai un ensemble de données avec des tweets.Je recherche le mot néerlandais « verhuizen ».Lorsque j'exécute le code suivant, j'obtiens deux tweets de mon ensemble de données contenant le mot.

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

[1] @Isaa_0592 l'a fait ?Waarheen et?

[2] Oui, l'école est arrivée ici à l'heure du dorp, nous ne pouvons plus l'utiliser dès maintenant !??

Ensuite, j'exécute le code pour trouver le mot le plus associé à « verhuizen » en utilisant findAssocs du package tm.

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)

Mon résultat de ce code est :

waarheen 0.58

dorp 0,24

isaa0592 0,24

généré 0,22

hauteur 0,15

Je ne sais pas comment findAssocs calcule les scores.Par exemple:Pourquoi le mot « waarheen » obtient-il un score si élevé ?Il n’est évoqué qu’une seule fois dans l’un des deux tweets.Je ne comprends pas comment findAssocs calcule les scores des mots associés.J'ai recherché la fonction d'aide, Google et Stackoverflow mais je n'ai pas trouvé de réponse satisfaisante.Est-ce que quelqu'un sait?

Je pense que la réponse que je cherche se trouve dans les lignes de code suivantes.Ce que j'ai obtenu de la question suivante.

Mathématiques de tm::findAssocs, comment fonctionne cette fonction ?

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

Qu'est ce que ça fait?Je vais essayer de le comprendre moi-même en exécutant des parties de la phrase.

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

Pourquoi cela me donne-t-il l'erreur suivante ?

Erreur:inattendu ',' dans "test <- Aah.dtm['verhuizen', which(Aah.dtm['verhuizen', ]> 0.10)],"

Était-ce utile?

La solution

Si vous souhaitez savoir comment fonctionne la fonction, le plus simple est de consulter la documentation.La page principale est ici, avec une référence de fonction ici et une jolie vignette ici.

Si ceux-ci ne vous donnent pas suffisamment de détails, vous pouvez toujours consulter le code source, qui se trouve être disponible sous GPL.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top