IniziaInizia gratis

Applica i passaggi di preprocessing a un corpus

Il pacchetto tm fornisce la funzione tm_map() per applicare funzioni di pulizia a un intero corpus, semplificando i passaggi di cleaning.

tm_map() accetta due argomenti: un corpus e una funzione di pulizia. Qui, removeNumbers() è del pacchetto tm.

corpus <- tm_map(corpus, removeNumbers)

Per compatibilità, le funzioni di base R e di qdap devono essere incapsulate in content_transformer().

corpus <- tm_map(corpus, content_transformer(replace_abbreviation))

Potresti applicare le stesse funzioni a più corpora; usare una funzione personalizzata come quella mostrata nell’editor ti farà risparmiare tempo (e righe di codice). clean_corpus() accetta un argomento, corpus, applica in ordine una serie di funzioni di pulizia e poi restituisce il corpus aggiornato.

L’ordine dei passaggi di pulizia fa la differenza. Per esempio, se esegui removeNumbers() e poi replace_number(), la seconda funzione non troverà nulla da modificare! Controlla, ricontrolla e controlla ancora i tuoi risultati!

Questo esercizio fa parte del corso

Text mining con Bag-of-Words in R

Visualizza il corso

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Alter the function code to match the instructions
clean_corpus <- function(corpus) {
  # Remove punctuation
  corpus <- tm_map(corpus, ___)
  # Transform to lower case
  corpus <- tm_map(corpus, ___)
  # Add more stopwords
  corpus <- tm_map(corpus, removeWords, words = c(stopwords("en"), "coffee", ___))
  # Strip whitespace
  ___
  return(corpus)
}
Modifica ed esegui il codice