版权声明: https://blog.csdn.net/zheng_weibin/article/details/79090816
Pandas索引
df['列名']得到一个单独列
In[9]:kuandai['分公司']
Out[9]:
入网时间
2018-01-04 深圳
2018-01-04 深圳
2018-01-05 深圳
......
df[2:5]得到行的切片
In[14]:kuandai[2:4]
Out[14]:
入网时间 KD012指标 付费方式 付费类型 光宽类型 分公司 十六大渠道 宽带类型 揽装编码 日期 是否光宽
2018-01-05 当月累计入网用户数 NaN 未知 NaN 深圳 专营店 FTTH(拨号) NaN NaN 是
2018-01-09 当月累计入网用户数 NaN 未知 NaN 深圳 专营店 FTTH(拨号) NaN NaN 是
df.loc[]根据行列label进行索引,先行后列
df.loc['行名']得到一行
df.loc['行名1':'行名n']得到多行切片
df.loc['行名','列名']得到行列筛选的结果
df.loc['2018-01':'2018-02',['A','B']]根据label进行多轴索引,可传入列表、日期等格式
multi-index多层索引
多层索引使用idx = pd.IndexSlice,单独构建行列索引的idx传入df.loc中,针对每一个idx[],使用","对每个层级进行区分
df.loc[idx[:,'2018-01'],idx[:]]
idx = pd.IndexSlice
ec.groupby(by = ['分公司',ec.index]).sum().pct_change().loc[idx[:,tday],:].unstack()
Out[19]:
统计值
分公司
东莞 0.462428
中山 0.000000
佛山 -0.545455
广州 -0.776471
df.iloc[]根据行列位置进行索引,先行后列,其余用法可参考df.loc[]