pandas中数据透视表pivot操作

1.导入pandas,定义DataFrame

import pandas as pd
example = pd.DataFrame({'Month': ["January", "January", "January", "January", 
                                  "February", "February", "February", "February", 
                                  "March", "March", "March", "March"],
                   'Category': ["Transportation", "Grocery", "Household", "Entertainment",
                                "Transportation", "Grocery", "Household", "Entertainment",
                                "Transportation", "Grocery", "Household", "Entertainment"],
                   'Amount': [74., 235., 175., 100., 115., 240., 225., 125., 90., 260., 200., 120.]})
example

2.使用pivot进行数据统计

example_pivot = example.pivot(index = 'Category',columns= 'Month',values = 'Amount')
example_pivot

example_pivot.sum(axis = 1)
example_pivot.sum(axis = 0)

3.读取csv

df = pd.read_csv('./data/titanic.csv')
df.head()

4.指定特征值类型(行表头、列表头、特征数据)绘制图表,图表中的数据默认为平均值

df.pivot_table(index = 'Sex',columns='Pclass',values='Fare')

5.求最大值

6.统计数量

df.pivot_table(index = 'Sex',columns='Pclass',values='Fare',aggfunc='count')

pd.crosstab(index = df['Sex'],columns = df['Pclass'])

7.求平均值

df.pivot_table(index = 'Pclass',columns='Sex',values='Survived',aggfunc='mean')

df['Underaged'] = df['Age'] <= 18
df.pivot_table(index = 'Underaged',columns='Sex',values='Survived',aggfunc='mean')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小徐的记事本

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值