数据分层3之取值与切片

import pandas as pd
import numpy as np

  

data1 = pd.read_excel("F:/分层数据.xlsx",skiprows=[0,1],header=None)
data2 = data1.set_index([0,1])
col = pd.MultiIndex.from_product([["第一季度","第二季度","第三季度","第四季度"],["第一期","第二期","第三期"]])
data3 = pd.DataFrame(data2.values,columns=col,index=data2.index)
data3

  

#loc取值法,可以[]来t

data3.loc[("一部",["A","B"]),:]   

  

data3.sort_index(level=0 #一级排序二级也会同时排序
                ,axis=0
                ,inplace=True #默认为True
                )

  

data3.sort_index(level=0 #一级排序二级也会同时排序
                ,axis=1
                ,inplace=True #默认为True
                )
data3

  

#loc切片法,切片来说()里面不可以切片,需要借助pd.IndexSlice,并且要求索引是排序过的

ide = pd.IndexSlice
data3.loc[ide["一部":"三部",:],ide["第一季度":"第二季度",:]]

  

posted @ 2020-01-16 22:41  数据骆驼  阅读(175)  评论(0)    收藏  举报