zoukankan      html  css  js  c++  java
  • pandas中层次化索引与切片

    Pandas层次化索引

    1. 创建多层索引

    隐式索引:

    常见的方式是给dataframe构造函数的index参数传递两个或是多个数组

    Series也可以创建多层索引

    Series多层索引

    B =Series(np.random.randint(0,150,size=10),index=pd.MultiIndex.from_product([list("ABCDE"),["期中","期末"]]))

    B

    Dataframe多层索引的创建(推荐使用)

    多层行索引

    A = DataFrame(np.random.randint(0,150,size=(10,3)),columns=["数学","语文","英语"],

                 index=pd.MultiIndex.from_product([list("ABCDE"),["期中","期末"]]))

    A

     

    对象方式多行列索引

    B= DataFrame(np.random.randint(0,150,size=(3,20)),index=["数学","语文","英语"],columns=pd.MultiIndex.from_product([list("ABCDE"),["期中","期末"],["上","下"]]))

    B

    元祖方式创建多层索引

    A = DataFrame(np.random.randint(0,150,size=(4,3)),columns=["数学","语文","英语"],

                 index=pd.MultiIndex.from_tuples([("A","期中"),("A","期末"),("B","期中"),("B","期末")]))

    A

    数组方式创建多层索引

    多层索引的对象的索引和切片

    Datafrane多层索引

    行索引:

    A.loc["A","期中"]

    B.loc["A","期中","上"]

    列索引:

    B["A","期中","上"]

    Series多层索引

      

    行切片以下两种都适用

    D["A","期中"]

    D.loc["A","期中"]

     

      

     

    多层索引的切片

    注:对于多层索引的切片必须排好顺序,才能进行切片,使用sort_index()函数对索引进行排序(单层索引可以切片可以不考虑索引的顺序)。

     

    对行进行切片

    A.loc["A":"C"]

     

    A.iloc[1:3]

    对列进行切片同行切片一样,使用显性索引和隐形索引对数据第二维进行切片

     

     

    对数据进行排序是,使用sort_values()对数据进行排序

    如:A.sort_values(by=["数学"])  #对按数学成绩进行排序

  • 相关阅读:
    消息摘要技术(MD5)
    编写JsonResult封装JSON返回值(模板参阅)
    JS面向对象编程(进阶理解)
    markdown常用语法教程
    Spring-MVC请求参数值和向页面传值
    Spring-MVC开发步骤(入门配置)
    Live Templates快捷键模板
    压力测试中java.net.BindException: Address already in use: connect
    jmeter初始化工作
    xshell配色
  • 原文地址:https://www.cnblogs.com/kuangkuangduangduang/p/10258654.html
Copyright © 2011-2022 走看看