2017-06-08 17 views
1

Ich habe nur R verfügbar bei der Arbeit, und ich habe dies zuvor in Python getan. Ich muss jeden Vorfall in einer CSV-Datei zählen. Ich habe eine Stimmungsanalyse in Python gemacht, wo ich ein Wörterbuch gesucht habe, das Python in einer Tabelle mit der Zählung für jede Phrase durchsucht hat. Ich erforsche, wie man das in R macht, und habe nur Wege gefunden, eine allgemeine Wortzählung mit einer vorgegebenen Häufigkeit durchzuführen.Textanalyse in R - Worthäufigkeit

Bitte lassen Sie mich wissen, ob jemand irgendwelche Links zu Ressourcen auf hat, wie Sie das in R. auszuführen Danke :)

+0

Willkommen an Bord. Bitte fügen Sie einen Teil Ihrer Daten hinzu, damit wir einen Blick darauf werfen können – amonk

Antwort

2

Hier ist ein Anfang: http://tidytextmining.com

library(tidytext) 

text_df %>% 
    unnest_tokens(word, text) 

library(tidytext) 
tidy_books <- original_books %>% 
    unnest_tokens(word, text) 

tidy_books 

tidy_books %>% 
    count(word, sort = TRUE) 
1

Das Paket tidytext ist eine gute Lösung. Eine weitere Option ist das Text-Mining-Paket tm zu verwenden:

library(tm) 
df<-read.csv(myfile) 

corpus<-Corpus(VectorSource(df$text)) 
corpus<-tm_map(corpus, content_transformer(tolower)) 
corpus<-tm_map(corpus, removeNumbers) 
corpus<-tm_map(corpus, removeWords, stopwords('english')) 
#corpus<-tm_map(corpus, stemDocument, language = "english") 
corpus<-tm_map(corpus, removePunctuation) 

tdm<-TermDocumentMatrix(corpus) 

tdmatrix<-as.matrix(tdm) 
wordfreq<-sort(rowSums(tdmatrix), decreasing = TRUE) 

das Codebeispiel bereinigt um den Text durch Stoppwörter zu entfernen, alle Zahlen und Satzzeichen. Die endgültige Antwort wordfreq ist bereit für mit dem Wordcloud-Paket, wenn Sie interessiert sind.

Verwandte Themen