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

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *