(pandas pivot_table) 详解pandas.pivot_table()(创建透视表)函数使用方法
Pandas 中的 pivot_table()
函数非常实用,它主要用于创建数据透视表。透视表是一种可以对数据动态排布并且分类汇总的表格格式。或者说,通过透视表我们可以很容易地按照要求将数据重新进行格式化。
以下是 pivot_table()
函数的基础语法:
pandas.pivot_table(data, values=None, index=None, columns=None, aggfunc='mean', fill_value=None, margins=False, dropna=True, margins_name='All')
参数解释:
- data:需要处理的DataFrame。
- values:用于指定需要聚合的字段。
- index:在透视表的行上进行分组的字段。
- columns:在透视表的列上进行分组的字段。
- aggfunc:定义在值上的聚合函数,默认为’mean’,支持numpy的函数
- fill_value:替换结果表中的缺失值。
- margins:添加行/列小计和总计,默认为False。
- dropna:默认为True,是删除观测到的分类都拥有缺失值。
- margins_name:默认为’All’,需要margins=True时,用于覆盖行和/或列名。
以下是一个详细的使用方法:
假设我们有一个关于用户信息的DataFrame,如下所示:
import pandas as pd
import numpy as np
# 建立数据
df = pd.DataFrame({"A": ["人物", "人物", "事物", "事物", "事物"],
"B": ["一", "二", "一", "二", "一"],
"C": ["小玩意", "重物", "盒子", "盒子", "重物"],
"D": [1, 2, 3, 4, 5],
"E": [10, 20, 30, 40, 50]})
print(df)
使用 pivot_table()
函数创建透视表:
# 创建透视表
pivot_table_df = pd.pivot_table(df, values='D', index=['A', 'B'],
columns=['C'], aggfunc=np.sum)
print(pivot_table_df)
在这个例子中,我们将 ‘A’ 和 ‘B’ 设置为透视表的索引 (index),’C’ 设置为列,’D’ 是我们要聚合的值,使用numpy中的 ‘sum’ 函数进行聚合。得到的结果是 ‘A’ 和 ‘B’ 的不同组合下 ‘C’ 的不同类别对 ‘D’ 的求和结果的一个透视表。
(python 列表切片) 详解Python 列表切片技巧 Python 列表切片基本用法 全网首发(图文详解1)
(Python字节类型) Python bytes类型详解 Python bytes 类型概述 全网首发(图文详解1)