¿Cómo crear una tabla dinámica con múltiples índices desde una hoja de Excel usando Pandas en Python?

 El término tabla dinámica se puede definir como la función de Pandas utilizada para crear una tabla dinámica de estilo hoja de cálculo como un marco de datos. Se puede crear utilizando el método pivot_table() .

Sintaxis: pandas.pivot_table(datos, índice=Ninguno)

Parámetros:

data : DataFrame
índice: columna, agrupador, array o lista de los anteriores

índice: Es la característica que le permite agrupar sus datos. 

Devoluciones: marco de datos

Nota: Podemos filtrar más la tabla agregando los parámetros opcionales. 

Ejemplo 1: Enlace al archivo CSV: ARCHIVO CSV 
Podemos echar un vistazo a los datos ejecutando el siguiente programa: 

Python3

# importing pandas as pd 
import pandas as pd
  
# Create the dataframe 
df=pd.read_csv('GeeksForGeeks.csv')
  
# Print the dataframe 
df

Producción:

img

Sabemos que el índice es la función que nos permite agrupar nuestros datos y especificar varias columnas, ya que los índices en la función pivote aumentan el nivel de detalles y agrupan los datos. 
Manteniendo un solo índice en la tabla: 
 

Python3

# importing pandas as pd 
import pandas as pd
  
# Create the dataframe 
df=pd.read_csv('GeeksForGeeks.csv')
  
# Print the resultant table
print(pd.pivot_table(df,index=["Country"]))

Producción:

img

Como podemos ver, la agrupación se realiza por países y los datos numéricos se imprimen como el promedio de todos los valores con respecto al índice especificado.
Ahora, manteniendo múltiples índices en la tabla: 
 

Python3

# importing pandas as pd 
import pandas as pd
  
# Create the dataframe 
df=pd.read_csv('GeeksForGeeks.csv')
  
# Print the resultant table
print(pd.pivot_table(df,index=["Country","Salary"]))

Producción:

img

Ejemplo 2: Enlace al archivo CSV: ARCHIVO CSV 
 

Python3

# importing pandas as pd 
import pandas as pd
  
# Create the dataframe 
df=pd.read_csv('GeeksForGeeks_1.csv')
  
# Print the dataframe 
df

Producción:

img

Manteniendo el número de siglos anotados por los jugadores y sus nombres como índices, obtenemos: 
 

Python3

# importing pandas as pd 
import pandas as pd
  
# Create the dataframe 
df=pd.read_csv('dataset/new_players.csv')
  
# Print the resultant table
print(pd.pivot_table(df,index=["century","name"]))

Producción:

img

Publicación traducida automáticamente

Artículo escrito por shardul_singh_tomar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *