Calcolare il coefficiente di correlazione di Pearson
Come menzionato nel video, il coefficiente di correlazione di Pearson, detto anche Pearson r, è spesso più facile da interpretare della covarianza. Si calcola con la funzione np.corrcoef(). Come np.cov(), accetta due array come argomenti e restituisce un array 2D. Le voci [0,0] e [1,1] sono necessariamente uguali a 1 (riesci a pensare al perché?), e il valore che ci interessa è la voce [0,1].
In questo esercizio scriverai una funzione, pearson_r(x, y), che prende in input due array e restituisce il coefficiente di correlazione di Pearson. Userai poi questa funzione per calcolarlo sulle lunghezze e le larghezze dei petali di I. versicolor.
Ti riproponiamo lo scatter plot generato in un esercizio precedente per ricordarti come sono correlate larghezza e lunghezza del petalo.
Questo esercizio fa parte del corso
Pensare in modo statistico con Python (Parte 1)
Istruzioni dell'esercizio
- Definisci una funzione con firma
pearson_r(x, y).- Usa
np.corrcoef()per calcolare la matrice di correlazione dixey(passali anp.corrcoef()in quest'ordine). - La funzione restituisce la voce
[0,1]della matrice di correlazione.
- Usa
- Calcola la correlazione di Pearson tra i dati negli array
versicolor_petal_lengtheversicolor_petal_width. Assegna il risultato ar. - Stampa il risultato.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
def ____(____, ____):
"""Compute Pearson correlation coefficient between two arrays."""
# Compute correlation matrix: corr_mat
# Return entry [0,1]
return corr_mat[0,1]
# Compute Pearson correlation coefficient for I. versicolor: r
# Print the result