pandas层次化索引

 

 

 

 

 

 

 

 

1. 创建多层行索引

1) 隐式构造

最常见的方法是给DataFrame构造函数的index参数传递两个或更多的数组

  • Series也可以创建多层索引
  •  

2) 显示构造pd.MultiIndex

  • 使用数组
    • 使用tuple
    • 使用product

      最简单,推荐使用

    • 2. 多层列索引

      • 3. 多层索引对象的索引与切片操作

        1)Series的操作

        【重要】对于Series来说,直接中括号[]与使用.loc()完全一样,因此,推荐使用中括号索引和切片。

        (1) 索引

        (2) 切片

        2)DataFrame的操作

        (1) 可以直接使用列名称来进行列索引

        (2) 使用行索引需要用ix(),loc()等函数

        【极其重要】推荐使用loc()函数

        注意在对行索引的时候,若一级行索引还有多个,对二级行索引会遇到问题!

        也就是说,无法直接对二级索引进行索引,必须让二级索引变成一级索引后才能对其进行索引!

        4. 索引的堆(stack)

        • stack()
        • unstack()
        • 小技巧】使用stack()的时候,level等于哪一个,哪一个就消失,出现在行里。
        • 小技巧】使用unstack()的时候,level等于哪一个,哪一个就消失,出现在列里。

        5. 聚合操作

        【注意】

        • 需要指定axis

        • 【小技巧】和unstack()相反,聚合的时候,axis等于哪一个,哪一个就保留。

        所谓的聚合操作:平均数,方差,最大值,最小值……

         

posted @ 2017-10-26 21:41  你好,小帝  阅读(11722)  评论(0编辑  收藏  举报