Come calcolare la media condizionale nei panda (con esempi)
È possibile utilizzare la seguente sintassi per calcolare una media condizionale nei panda:
df. loc [df[' team '] == ' A ', ' points ']. mean ()
Questo calcola la media della colonna “punti” per ogni riga nel DataFrame in cui la colonna “squadra” è uguale ad “A”.
I seguenti esempi mostrano come utilizzare questa sintassi in pratica con i seguenti DataFrame panda:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B'],
' points ': [99, 90, 93, 86, 88, 82],
' assists ': [33, 28, 31, 39, 34, 30]})
#view DataFrame
print (df)
team points assists
0 to 99 33
1 A 90 28
2 A 93 31
3 B 86 39
4 B 88 34
5 B 82 30
Esempio 1: calcolare la media condizionale per una variabile categoriale
Il codice seguente mostra come calcolare la media della colonna “punti” solo per le righe nel DataFrame in cui la colonna “team” ha il valore “A”.
#calculate mean of 'points' column for rows where team equals 'A'
df. loc [df[' team '] == ' A ', ' points ']. mean ()
94.0
Il valore medio nella colonna “punti” per le righe in cui “squadra” è uguale a “A” è 94 .
Possiamo verificarlo manualmente calcolando la media dei valori dei punti solo per le linee in cui “squadra” è uguale ad “A”:
- Punti medi: (99 + 90 + 93) / 3 = 94
Esempio 2: calcolare la media condizionale per una variabile numerica
Il codice seguente mostra come calcolare la media della colonna “assist” solo per le righe nel DataFrame in cui la colonna “punti” ha un valore maggiore o uguale a 90.
#calculate mean of 'assists' column for rows where 'points' >= 90
df. loc [df[' points '] >= 90 , ' assists ']. mean ()
30.666666666666668
Il valore medio nella colonna “assist” per le righe in cui i “punti” sono maggiori o uguali a 90 è 30,66667 .
Possiamo verificarlo manualmente calcolando la media dei valori dei punti solo per le linee in cui “squadra” è uguale ad “A”:
- Assist medi: (33 + 28 + 31) / 3 = 30,66667
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni nei panda:
Come calcolare la media delle colonne in Pandas
Come calcolare una media mobile nei panda
Come riempire i valori NaN con la media nei panda