Gestione delle Tabelle Pivot
Python dispone di un analogo del metodo .groupby()
che può portare allo stesso risultato. La scelta della funzione da utilizzare spetta a te. Approfondiamo questo aspetto tramite un esempio. Utilizzando la seguente funzione, chiamata .pivot_table()
, calcoleremo i valori medi della colonna 'Length'
che presentano lo stesso valore nella colonna 'Flight'
:
123456789101112131415import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/plane', index_col = 0) # The code using .groupby() data_flights_1 = data[['Length', 'Flight']].groupby('Flight').mean() # The same code using .groupby() data_flights_2 = data[['Length', 'Flight']].groupby('Flight').agg('mean') # The same code using .pivot_table() data_flights_3 = pd.pivot_table(data, values = 'Length', index = 'Flight', aggfunc = 'mean') print(data_flights_1.head())
Spiegazione:
data = pd.pivot_table(data, values = 'Length',
index = 'Flight',
aggfunc = 'mean')
pd.pivot_table()
- funzione che crea tabelle pivot;data
- data frame utilizzato;values = 'Length'
- all'argomentovalues
si assegnano le colonne aventi lo stesso gruppo, sulle quali verrà applicato il calcolo della media, massimo, ecc. Se si desidera raggruppare per più colonne, inserirle in una lista; l'ordine non è rilevante;index = 'Flight'
-index
è un argomento a cui si assegna il nome di una colonna o di colonne su cui si vuole effettuare il raggruppamento. Se si desidera raggruppare per più colonne, inserirle in una lista; l'ordine è rilevante, come nella funzione.groupby()
;aggfunc = 'mean'
- come peragg
nel metodo.groupby()
,aggfunc
ha esattamente la stessa sintassi diagg
. È quindi possibile inserire più funzioni, racchiudendole in una lista, per specificare funzioni diverse per colonne differenti utilizzando le parentesi graffe.
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Awesome!
Completion rate improved to 3.03
Gestione delle Tabelle Pivot
Scorri per mostrare il menu
Python dispone di un analogo del metodo .groupby()
che può portare allo stesso risultato. La scelta della funzione da utilizzare spetta a te. Approfondiamo questo aspetto tramite un esempio. Utilizzando la seguente funzione, chiamata .pivot_table()
, calcoleremo i valori medi della colonna 'Length'
che presentano lo stesso valore nella colonna 'Flight'
:
123456789101112131415import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/plane', index_col = 0) # The code using .groupby() data_flights_1 = data[['Length', 'Flight']].groupby('Flight').mean() # The same code using .groupby() data_flights_2 = data[['Length', 'Flight']].groupby('Flight').agg('mean') # The same code using .pivot_table() data_flights_3 = pd.pivot_table(data, values = 'Length', index = 'Flight', aggfunc = 'mean') print(data_flights_1.head())
Spiegazione:
data = pd.pivot_table(data, values = 'Length',
index = 'Flight',
aggfunc = 'mean')
pd.pivot_table()
- funzione che crea tabelle pivot;data
- data frame utilizzato;values = 'Length'
- all'argomentovalues
si assegnano le colonne aventi lo stesso gruppo, sulle quali verrà applicato il calcolo della media, massimo, ecc. Se si desidera raggruppare per più colonne, inserirle in una lista; l'ordine non è rilevante;index = 'Flight'
-index
è un argomento a cui si assegna il nome di una colonna o di colonne su cui si vuole effettuare il raggruppamento. Se si desidera raggruppare per più colonne, inserirle in una lista; l'ordine è rilevante, come nella funzione.groupby()
;aggfunc = 'mean'
- come peragg
nel metodo.groupby()
,aggfunc
ha esattamente la stessa sintassi diagg
. È quindi possibile inserire più funzioni, racchiudendole in una lista, per specificare funzioni diverse per colonne differenti utilizzando le parentesi graffe.
Grazie per i tuoi commenti!