Inizia subitoInizia gratis

Q-Q plot per valutare la normalità

Il quantile-quantile plot (Q-Q plot) è un metodo grafico più efficace per mettere in evidenza la non normalità. In generale, un Q-Q plot confronta i quantili dei dati con i quantili di una distribuzione di riferimento; se i dati provengono da una distribuzione dello stesso tipo (a fattore di scala e posizione vicino), dovresti osservare una linea ragionevolmente dritta. Ricorda che i gradi di libertà (df) indicano il numero di valori o osservazioni che possono influenzare il sistema con cui stai lavorando.

Nel video, hai visto come generare 1000 punti da una normale con la funzione rnorm(), come usare qqnorm() per creare il Q-Q plot e qqline() per aggiungere una linea retta di riferimento:

> data <- rnorm(1000, mean = 3, sd = 2)
> qqnorm(data)
> qqline(data) 

In questo esercizio creerai un Q-Q plot dei log-return del Dow Jones in djx rispetto alla distribuzione normale di riferimento, che aggiungerai come guida visiva. Confronterai poi il grafico con insiemi di dati simulati da distribuzioni normale, t di Student e uniforme generati con le funzioni rnorm(), rt() e runif(). La distribuzione t verrà trattata più avanti in questo capitolo.

Se i dati provengono da una distribuzione normale, i punti dovrebbero essere vicini alla linea rossa (anche se può esserci qualche deviazione alle estremità).

Ancora una volta, djx è già stato caricato nel tuo workspace.

Questo esercizio fa parte del corso

Gestione del rischio quantitativa in R

Visualizza corso

Istruzioni dell'esercizio

  • Crea un Q-Q plot di djx rispetto alla normale con qqnorm() e aggiungi una linea rossa con qqline() e col = "red" per valutare se il grafico è lineare.
  • Calcola la lunghezza di djx con length() e assegnala all'oggetto n.
  • Genera n variabili normali standard con rnorm() e assegnale a x1. Crea un Q-Q plot di x1 rispetto alla normale e aggiungi una linea rossa come prima.
  • Genera n variabili t di Student con 4 gradi di libertà e assegnale a x2 (questo è già stato fatto per te). Crea un Q-Q plot di x2 rispetto alla normale e aggiungi una linea rossa.
  • Genera n variabili uniformi e assegnale a x3 (questo è già stato fatto per te). Crea un Q-Q plot di x3 rispetto alla normale e aggiungi una linea rossa.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# Make a Q-Q plot of djx and add a red line
___(___)
___(___, ___)

# Calculate the length of djx as n
n <- ___

# Generate n standard normal variables, make a Q-Q plot, add a red line
x1 <- ___(___)
___(___)
___(___, ___)

# Generate n Student t variables, make a Q-Q plot, add a red line
x2 <- rt(n, df = 4)
___(___)
___(___, ___)

# Generate n standard uniform variables, make a Q-Q plot, add red line
x3 <- runif(n)
___(___)
___(___, ___)
Modifica ed esegui il codice