Gestión de Tablas Dinámicas
Python tiene un análogo del método .groupby()
que puede conducir al mismo resultado. Depende de usted cuál función utilizar. Aprendámoslo mediante un ejemplo. Usando la siguiente función, llamada .pivot_table()
, calcularemos los valores medios de la columna 'Length'
que tienen el mismo valor en la columna '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())
Explicación:
data = pd.pivot_table(data, values = 'Length',
index = 'Flight',
aggfunc = 'mean')
pd.pivot_table()
- función que crea tablas dinámicas;data
- marco de datos que utilizamos;values = 'Length'
- al argumentovalues
, asignamos columnas que tienen el mismo grupo, para las cuales aplicaremos el cálculo del promedio, máximo, etc. Si desea agrupar por varias columnas, colóquelas en una lista; el orden no es crucial;index = 'Flight'
-index
es un argumento al que se le asigna el nombre de una columna o columnas por las que desea agrupar. Si desea agrupar por varias columnas, colóquelas en una lista; el orden sí es crucial, como en la función.groupby()
;aggfunc = 'mean'
- igual queagg
en el método.groupby()
,aggfunc
tiene exactamente la misma sintaxis queagg
. Por lo tanto, puede colocar varias funciones aquí poniéndolas en una lista para especificar funciones para diferentes columnas usando llaves.
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Can you explain the difference between .groupby() and .pivot_table() in more detail?
What other aggregation functions can I use with .pivot_table()?
How can I group by multiple columns using .pivot_table()?
Awesome!
Completion rate improved to 3.03
Gestión de Tablas Dinámicas
Desliza para mostrar el menú
Python tiene un análogo del método .groupby()
que puede conducir al mismo resultado. Depende de usted cuál función utilizar. Aprendámoslo mediante un ejemplo. Usando la siguiente función, llamada .pivot_table()
, calcularemos los valores medios de la columna 'Length'
que tienen el mismo valor en la columna '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())
Explicación:
data = pd.pivot_table(data, values = 'Length',
index = 'Flight',
aggfunc = 'mean')
pd.pivot_table()
- función que crea tablas dinámicas;data
- marco de datos que utilizamos;values = 'Length'
- al argumentovalues
, asignamos columnas que tienen el mismo grupo, para las cuales aplicaremos el cálculo del promedio, máximo, etc. Si desea agrupar por varias columnas, colóquelas en una lista; el orden no es crucial;index = 'Flight'
-index
es un argumento al que se le asigna el nombre de una columna o columnas por las que desea agrupar. Si desea agrupar por varias columnas, colóquelas en una lista; el orden sí es crucial, como en la función.groupby()
;aggfunc = 'mean'
- igual queagg
en el método.groupby()
,aggfunc
tiene exactamente la misma sintaxis queagg
. Por lo tanto, puede colocar varias funciones aquí poniéndolas en una lista para especificar funciones para diferentes columnas usando llaves.
¡Gracias por tus comentarios!