[Funciones comunes de Python] Este artículo le permite comprender a fondo la función pivot_table en Python

Todo es un proceso desde el cambio cuantitativo hasta el cambio cualitativo, y aprender Python no es una excepción. Solo conociendo bien las funciones comunes en un idioma, podemos ser útiles en el proceso de tratar problemas y encontrar rápidamente la solución óptima. Este artículo explorará contigo la función pivot_table en Python, para que puedas comprender el principio de esta función en el menor tiempo posible. También puede utilizar el tiempo fragmentado para consolidar esta función para que sea más eficiente en el proceso de procesamiento.


  

1. Definición de la función Pivot_table

  
La función pivot_table es una función en la biblioteca de pandas, y la llamada primero debe cargar la biblioteca de pandas. Su función es equivalente a la tabla dinámica en Excel. Su sintaxis de llamada básica es la siguiente:

import pandas as pd 

pd.pivot_table(data: 'DataFrame', values=None, index=None, columns=None, aggfunc: 'AggFuncType' = 'mean', fill_value=None, margins: 'bool' = False, dropna: 'bool' = True, margins_name: 'str' = 'All', observed: 'bool' = False, sort: 'bool' = True)

datos: conjunto de datos.
  
valores: las columnas que se agregarán. De forma predeterminada, se agregan todas las variables numéricas.
  
índice: establece el nombre del índice de la fila en la tabla dinámica.
  
columnas: establezca el nombre del índice de la columna en la tabla dinámica.
  
aggfunc: función estadística agregada, que puede ser una sola función, una lista de funciones o un formato de diccionario, y el valor predeterminado es la media. Cuando este parámetro se pasa en formato de diccionario, la clave es el nombre de la columna y el valor es el valor de la función de agregación. En este momento, el parámetro de valores no es válido.
  
fill_value: Valor de llenado del valor faltante, el valor predeterminado es NaN, es decir, los valores faltantes no se procesan. Tenga en cuenta que el valor que falta aquí se refiere al valor que falta que puede existir en el resultado después de la rotación, no al valor que falta en la tabla original antes de la rotación.
  
márgenes: especifica si se agregan columnas de resumen; el valor predeterminado es Falso.
  
margins_name: el nombre de la columna de resumen, usado junto con margins, el valor predeterminado es 'All', cuando margins es False, este parámetro no tiene efecto.
  
dropna: ya sea para eliminar filas o columnas que son todas NaN en los resultados del resumen, el valor predeterminado es Verdadero.

  

Dos, instancia de función pivot_table

  

1 Importar biblioteca y cargar datos

  
Primero importe las bibliotecas necesarias en este artículo y cargue los datos.Si no ha instalado algunas bibliotecas y se informa un error al ejecutar el código, puede usar el método pip para instalarlas en Anaconda Prompt.

import os 
import numpy as np
import pandas as pd 

os.chdir(r'G:\python\17_python中常用函数')
date = pd.read_excel('date.xlsx', sheet_name='ori')
date

os.chdir: establezca la ruta del archivo para el almacenamiento de datos.
  
pd.read_excel: leer datos.
  
Obtenga el resultado:
  
imagen
  
el conjunto de datos anterior se creó para una comprensión clara de la función pivot_table y no tiene un significado práctico.

  
  

2 instancias

  

Ejemplo 1: especificar el parámetro de índice de índice de fila

  
Veamos primero el efecto de establecer solo un parámetro de índice y usar valores predeterminados para el resto de los parámetros. El código es el siguiente:

pd.pivot_table(date, index="课程")

Obtenga el resultado:
  
imagen
  
a partir del resultado, cuando pivot_table solo establece un parámetro de índice, es equivalente a tratar los parámetros en el índice como filas y calcular el valor promedio para todas las columnas numéricas en la tabla de datos. Similar a la siguiente situación en excel:
  
imagen

  
  

Ejemplo 2: especificar las columnas que se agregarán

  
A continuación, echemos un vistazo al parámetro de valores para seleccionar las columnas que se agregarán para mostrar, el código es el siguiente:

pd.pivot_table(date, index="课程", values=['综合成绩'])

obtuve la respuesta:

**imagen**
  
En el ejemplo comparativo 1, se puede encontrar que cuando no se establecen los valores, todas las columnas numéricas en la tabla de datos se agregan de forma predeterminada. Si solo desea agregar ciertas columnas, puede especificarlo en el parámetro de valores.

  
  

Ejemplo 3: especificar el parámetro de columnas de índice de columna

  
A continuación, echemos un vistazo a las columnas que se agregarán para su visualización mediante la aplicación del parámetro de columnas. El código es el siguiente:

pd.pivot_table(date, index=["课程"], columns=['教师'], values=['综合成绩'])

obtuve la respuesta:

inserte la descripción de la imagen aquí

  
Similar a las siguientes configuraciones en Excel:
  
**imagen**

  
  

Ejemplo 4: especificar funciones estadísticas agregadas

  
Si la función aggfunc no especifica una función de agregación, el valor medio se calcula de forma predeterminada. A continuación, pruebe la función de suma para ver el efecto. El código es el siguiente:

pd.pivot_table(date, index="课程", values=['综合成绩'], aggfunc=np.sum)

obtuve la respuesta:

imagen
  
A partir de los resultados, puede especificar la función que se agregará en la función aggfunc según sus necesidades.

  
  

Ejemplo 5: configuración de índices de dos niveles

  
A continuación, observe el efecto de establecer dos variables en el parámetro de índice para construir un índice de dos capas. El código es el siguiente:

pd.pivot_table(date, index=["课程", '教师'], values=['综合成绩'])

obtuve la respuesta:

imagen

Similar a las siguientes configuraciones en Excel:
  
imagen

  
  

Ejemplo 6: establecer la columna de resumen de combinación

  
Luego, configure para unirse a la columna de resumen, el código es el siguiente:

pd.pivot_table(date, index="课程", values=['综合成绩'], margins=True)

obtuve la respuesta:

imagen

  
  

Ejemplo 7: Especificación del relleno de valores faltantes

  
Finalmente, configure el relleno del valor faltante, el código es el siguiente:

pd.pivot_table(date, index=["课程"], columns=['教师'], values=['综合成绩'], fill_value='空值')

Resultados obtenidos:
  
imagen
  
Comparando el Ejemplo 3, se puede entender que fill_value llena los valores faltantes, lo que se refiere a los valores faltantes que existen en el resultado después de llenar el pivote, no los valores faltantes en la tabla original antes de pivotear.
  
Hasta ahora, se ha explicado la función pivot_table en Python. Si desea saber más sobre las funciones en Python, puede leer los artículos relevantes del módulo "Aprender Python" en la cuenta oficial.

  
Te puede interesar:
Dibuja Pikachu con Python
Dibuja un mapa de nube de palabras
con Python Dibuja 520 latidos eternos del corazón con Python Reconocimiento facial de Python: eres
en mis ojos
el único Usa la biblioteca py2neo en Python para operar neo4j y construir un mapa de relaciones Colección de código fuente de confesión romántica de Python (amor, rosa, pared de fotos, confesión bajo las estrellas)


Supongo que te gusta

Origin blog.csdn.net/qq_32532663/article/details/130030874
Recomendado
Clasificación