Come utilizzare corrwith() in panda (con esempi)
È possibile utilizzare la funzione corrwith() in Panda per calcolare la correlazione a coppie tra colonne numeriche con lo stesso nome in due DataFrames Panda diversi.
Questa funzione utilizza la seguente sintassi di base:
df1. corrwith (df2)
Nota : questa funzione è diversa dalla funzione corr() , che calcola la correlazione tra due colonne numeriche all’interno dello stesso DataFrame.
L’esempio seguente mostra come utilizzare nella pratica la funzione corrwith() .
Esempio: come utilizzare corrwith() in Panda
Supponiamo di avere i seguenti due DataFrames panda:
import pandas as pd #create first DataFrame df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F'], ' points ': [18, 22, 29, 25, 14, 11], ' assists ': [4, 5, 5, 4, 8, 12], ' rebounds ': [10, 6, 4, 6, 3, 5]}) print (df1) team points assists rebounds 0 to 18 4 10 1 B 22 5 6 2 C 29 5 4 3 D 25 4 6 4 E 14 8 3 5 F 11 12 5 #create second DataFrame df2 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F'], ' points ': [22, 25, 27, 35, 25, 20], ' assists ': [15, 13, 8, 8, 5, 8], ' rebs ': [4, 11, 12, 8, 7, 10]}) print (df2) team points assists rebs 0 A 22 15 4 1 B 25 13 11 2 C 27 8 12 3 D 35 8 8 4 E 25 5 7 5 F 20 8 10
Possiamo usare la funzione corrwith() per calcolare la correlazione tra colonne numeriche con gli stessi nomi nei due DataFrames:
#calculate correlation between numeric columns with same names in each DataFrame
df1. corrwith (df2)
points 0.677051
assists -0.478184
NaN rebounds
rebs NaN
dtype:float64
Dal risultato possiamo vedere:
- La correlazione tra i valori della colonna punto dei due DataFrame è 0.677 .
- La correlazione tra i valori delle colonne helper nei due DataFrame è -0.478 .
Poiché i nomi delle colonne rimbalzi e rebs non esistevano in entrambi i DataFrame, viene restituito un valore NaN per ciascuna di queste colonne.
Nota n. 1 : per impostazione predefinita, la funzione corrwith() calcola il coefficiente di correlazione Pearson tra le colonne, ma è anche possibile specificare metodo=’kendall’ o metodo=’spearman’ per calcolare un diverso tipo di coefficiente invece della correlazione.
Nota n.2 : puoi trovare la documentazione completa per la funzione corrwith() qui .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:
Come calcolare la correlazione per gruppo in Pandas
Come calcolare la correlazione scorrevole nei panda
Come calcolare la correlazione tra due colonne in Pandas