分享

Python学习教程:用Pandas做多层级索引难吗?

 千锋Python学堂 2019-07-18

有的伙伴想学用Pandas做多层级索引,但不知道从何学起,难度肯定会有的,还是得掌握方法的!

Pandas库的名字来源于其中3种主要数据结构开头字母的缩写:Panel,Dataframe,Series其中Series表示一维数据,Dataframe表示二维数据,Panel表示三维数据。当数据高于二维时,一般却不用 Panel 表示,为什么呢?如果不用 Panel,又该怎么做呢?

实际上,当数据高于二维时,我们一般用包含多层级索引的Dataframe进行表示,而不是使用Panel。原因是使用多层级索引展示数据更加直观,操作数据更加灵活,并且可以表示3维,4维乃至任意维度的数据。具体要怎么做呢?下面我们就从多层级索引的创建、取值与操作等内容教大家一些方法!

一、多层级索引的创建

1、指定多维列表作为columns

Python学习教程:用Pandas做多层级索引难吗?

2、使用pd.MultiIndex中的方法显式生成多层级索引

可以使用pd.MultiIndex中的from_tuples等方法生成多层级索引。

Python学习教程:用Pandas做多层级索引难吗?

3、使用set_index方法将普通列转成多层级索引

这种方法只能生成多层级行索引。

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

4、groupby和pivot_table等方法也可以生成带有多层级索引的结果

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

二、多层级索引的取值

多层级索引Series或多层级DataFrame支持方括号直接取值,loc取值,和pd.IndexSlice切片取值等方法。

1、多层级Series的取值

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

2、多层级DataFrame的取值

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

三、多层级索引相关操作

多层级索引相关操作包括stack和unstack,set_index和reset_index,以及指定level的相关方法。

1、stack和unstack

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

2、set_index和reset_index

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

3、指定level的相关方法

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

Python学习教程:用Pandas做多层级索引难吗?

伙伴们那些地方不清楚的可以留言哦!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多