IniziaInizia gratis

Box plot

Un modo semplice per confrontare più distribuzioni è il box plot. Questo codice ti aiuterà a costruire più box plot per una visualizzazione compatta.

In questo esercizio l'oggetto all_book_polarity è già caricato. Il data frame contiene due colonne, book e polarity. Comprende tutti i libri con la funzione polarity() di qdap applicata. Ecco le prime 3 righe del grande oggetto.

book polarity
14 huck 0.2773501
22 huck 0.2581989
26 huck -0.5773503

Questo esercizio introduce tapply(), che ti permette di applicare funzioni su un array irregolare. Fornisci un vettore di valori e poi un vettore di fattori. Per ogni combinazione fattore-valore, viene applicato il terzo parametro, una funzione come min(). Ad esempio, ecco del codice con tapply() usato su due vettori.

f1 <- as.factor(c("Group1", "Group2", "Group1", "Group2"))
stat1 <- c(1, 2, 1, 2)
tapply(stat1, f1, sum)

Il risultato è un array in cui Group1 ha valore 2 (1+1) e Group2 ha valore 4 (2+2).

Questo esercizio fa parte del corso

Sentiment Analysis in R

Visualizza il corso

Istruzioni dell'esercizio

  • Poiché è già caricato, esamina all_book_polarity con str().
  • Usando tapply(), passa all_book_polarity$polarity, all_book_polarity$book e la funzione summary(). Questo stamperà le statistiche descrittive dei 4 libri in termini dei loro punteggi di polarity(). Ti aspetteresti che Oz e Huck Finn abbiano medie più alte di Agamennone o Moby Dick. Presta particolare attenzione alla mediana.
  • Crea un box plot con ggplot() passando all_book_polarity.
    • Le estetiche devono essere aes(x = book, y = polarity).
    • Usando un + aggiungi geom_boxplot() con col = "darkred". Presta attenzione alla linea scura in ogni box che rappresenta la mediana.
    • Poi aggiungi un altro layer chiamato geom_jitter() per aggiungere punti per ciascuna delle parole.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Examine
___

# Summary by document
___

# Box plot
ggplot(___, aes(x = ___, y = ___)) +
  ___(fill = c("#bada55", "#F00B42", "#F001ED", "#BA6E15"), col = "___") +
  ___(position = position_jitter(width = 0.1, height = 0), alpha = 0.02) +
  theme_gdocs() +
  ggtitle("Book Polarity")
Modifica ed esegui il codice