python 数据透视表 获取值
时间: 2024-05-17 22:10:54 浏览: 152
用Python实现数据的透视表的方法
在 Python 中,我们可以使用 pandas 库中的 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 是要使用的数据集,values 是需要汇总的指标数据,index 是行上的分类变量,columns 是列上的分类变量,aggfunc 是对指标数据进行汇总的函数,fill_value 是用于填充缺失值的值,margins 是是否添加行/列汇总,dropna 是是否删除包含缺失值的行/列,margins_name 是用于标识行/列汇总的名称。
举个例子,假设我们有以下数据集:
```
import pandas as pd
data = {
'name': ['Tom', 'Jack', 'Tom', 'Jack', 'Tom', 'Jack', 'Tom', 'Tom'],
'subject': ['math', 'math', 'english', 'english', 'math', 'english', 'math', 'english'],
'score': [90, 80, 85, 70, 95, 75, 80, 85]
}
df = pd.DataFrame(data)
print(df)
```
输出结果如下:
```
name subject score
0 Tom math 90
1 Jack math 80
2 Tom english 85
3 Jack english 70
4 Tom math 95
5 Jack english 75
6 Tom math 80
7 Tom english 85
```
我们可以使用 pivot_table() 函数来创建数据透视表:
```
pivot_df = pd.pivot_table(df, values='score', index='name', columns='subject', aggfunc='mean')
print(pivot_df)
```
输出结果如下:
```
subject english math
name
Jack 72.5 80.0
Tom 85.0 86.7
```
这个数据透视表展示了每个学生在数学和英语科目上的平均成绩。通过数据透视表,我们可以很方便地查看数据的汇总信息。
阅读全文