pandas数据重塑转置&多层索引(6)


前言

python学习笔记—pandas day8(仅供学习使用)


一、转置

import numpy as np
import pandas as pd
df = pd.DataFrame(data = np.random.randint(0,100,size = (10,3)),
                  index = list('ABCDEFHIJK'),
                  columns=['Python','Tensorflow','Keras'])
display(df)
df.T # 转置

在这里插入图片描述

二、多层索引

1.行多层索引

df2 = pd.DataFrame(data = np.random.randint(0,100,size = (20,3)),
                   index = pd.MultiIndex.from_product([list('ABCDEFHIJK'),['期中','期末']]),#多层索引
                   columns=['Python','Tensorflow','Keras'])
df2

在这里插入图片描述

2.列多层索引

df3 = pd.DataFrame(data = np.random.randint(0,100,size = (10,6)),
                   index = list('ABCDEFHIJK'),
                   columns=pd.MultiIndex.from_product([['Python','Math','En'],['期中','期末']]))
df3

在这里插入图片描述

3. 列索引变行索引

display(df2)
# 行索引变成列索引,结构改变
# 默认情况下,最里层调整
# level = -1调整参数,可以改变行变列的顺序
#其中level = 0 调的是python索引结构
#level = 1 调整是 期中期末索引结构
df2.unstack(level = -1)

在这里插入图片描述

4.行索引变列索引

# stack堆,摞起来,一行行摞起来
# 作用:列索引变成行索引
df3.stack(level = 1)

在这里插入图片描述

5.多层索引运算

# 期中、期末消失
# 每个人,期中期末总分数
df2.sum(level = 0)#level=0表示运算是根据python来计算,求的是python期中总分。

在这里插入图片描述

# 同学索引消失
# 所有同学,期中、期末平均分
df2.mean(level = 1)

在这里插入图片描述

6,根据多层索引取数据

在这里插入图片描述


总结

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

周小唁

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

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

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

打赏作者

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

抵扣说明:

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

余额充值