1.
层次化索引 是指在一个轴上有多个索引级别 就是 套了两级甚至多级
iloc是 第几个就是第几个 跟几层索引没关系
loc是 看什么搜什么 可以一层可以两层 想看什么都可以
可以把这个两层索引的变成一个df
data.unstack()
再变回来两层索引是stack()函数
df也可以每条轴有分层索引
df=pd.DataFrame(np.arange(12),reshape(3,4),index=[ [ 都是 ] , [ 3个 ] ],columns=[ [ 都是 ] ,[ 4个 ] ])
然后也可以改 df.index(或者columns).names=[ 字符串或python对象 ]
然后df[ 要查的内容 ]
2.
重排和分级
df.swaplevel('key1','key2') 交换两个索引
df.sort_index(level=1) 以第二列索引为基准
3.
DataFrame和Series都有level选项 它用于指定某条轴上求和的级别
df.sum(level='key2') 就把key2那列留下了,然后key2中每一项都各自求和
df.sum(level='列名',axis=1) 表头是color那行留下,然后剩下的每一项各自求和
4.
做一个用df的列进行索引的
注意中括号 [ ] 括起来才是新的index
然后加一个参数 drop=False 就不会把cd列从一开始的位置删除了
reset_index()就放回去了