zoukankan      html  css  js  c++  java
  • pandas(二)

    层级索引:

      index=[('a',2010),('b',2011),('c',2010'),('a',2012),('e',2010),('f',2011)]

      age=[18,17,18,16,18,17]

    常规创建

      pop =pd.Series(age,index=index)

    MultiIndex创建

      index= pd.MultiIndex.from_tuples(index)

      pop = pop.reindex(index)   最原先的索引重置为multiindex

      pop[:,2010]  取出2010的所有数据

      

    高维数据的多级索引:

      pop_df = pop.unstack()   

      本质是生成一个a-f为行索引,年份为列索引的矩阵,缺失值用nan

      pop = pop_df.stack()   和unstack相反

    多级索引创建:

      直接将index参数设为二维

      df = pd.DataFrame(np.random.rand(4,2),

                  index=[['a','a','c','d'],[1,2,1,1]],

                  columns=['data1','data2'])

      将元祖作为键的字典传入

      data = {('a',1):18,('a',2):19,('b',1):20}

      pd.Series(data)  

      

      显式创建多级索引

      pd.MultiIndex.from_arrays([['a','a','b','b'],[1,2,1,2]])

      pd.MultiIndex.from_tuples([('a',1),('a',2),('b',1),('b',2)])  

    多级索引等级名称

      pop.index.names=['name','year']  以前面例子来说给name是a一列的名称,year是2010一列的形成

    Series多级索引

     获取单个元素:

      pop['a',2010]

      也可以支持局部取值

      pop['a']

      局部切片

      pop['a':'c']  但要求muliIndex按顺序排列

      pop[:,2012]

      pop[pop>18]

      pop[['a','b']]

        

      

      

      

  • 相关阅读:
    uva11235 FrequentValues (ST表)
    hdu5449 Robot Dog (树形dp+倍增lca)
    [BZOJ1637][Usaco2007 Mar]Balanced Lineup
    [BZOJ1688][Usaco2005 Open]Disease Manangement 疾病管理
    Luogu1119灾后重建
    [APIO2012]派遣
    [HNOI2004]宠物收养场
    [USACO14DEC] 驮运Piggy Back
    [USACO14JAN]滑雪等级Ski Course Rating
    [CODEVS3366] 矿石
  • 原文地址:https://www.cnblogs.com/saber-xi/p/10642917.html
Copyright © 2011-2022 走看看