Pandas教程-Pandas DataFrame.pivot_table()
Pandas的pivot_table()用于计算、聚合和总结数据。它被定义为一种强大的工具,可以使用Sum、Count、Average、Max和Min等计算对数据进行聚合。
它还允许用户在创建了数据透视表后对数据进行排序和过滤。
参数:
- data: 一个DataFrame。
- values: 这是一个可选参数,表示要聚合的列。
- index: 它指的是要进行分组的列、分组器和数组。
如果传递一个数组,它必须与数据的长度相同。
- columns: 指的是列、分组器和数组
如果传递一个数组,它必须与数据的长度相同。
- aggfunc: 函数、函数列表、字典,默认为numpy.mean 如果传递函数列表,生成的透视表将具有层次化的列,其顶级是函数名称。 如果传递字典,键被称为要聚合的列,值是函数或函数列表。
- fill_value[标量,默认为None]: 用一个值替换缺失值。
- margins[布尔值,默认为False]: 添加所有行/列(例如,用于小计/总计)
- dropna[布尔值,默认为True]: 删除所有条目都是NaN的列。
- margins_name[字符串,默认为'All']: 指的是在margins为True时包含总计的行/列的名称。
返回:
它返回一个DataFrame作为输出。
示例:
# importing pandas as pd
import pandas as pd
import numpy as np
# create dataframe
info = pd.DataFrame({'P': ['Smith', 'John', 'William', 'Parker'],
'Q': ['Python', 'C', 'C++', 'Java'],
'R': [19, 24, 22, 25]})
info
table = pd.pivot_table(info, index =['P', 'Q'])
table
输出
P Q R
John C 24
Parker Java 25
Smith Python 19
William C 22