频道栏目
首页 > 资讯 > 云计算 > 正文

Pandas_数据重构stack教程

17-12-18        来源:[db:作者]  
收藏   我要投稿
import numpy as np
import pandas as pd

stack

将行索引旋转为列索引,完成层级索引。

下面例子中,先创建一盒5 × 2 的DataFrame。

然后对它进行stack,于是原来的行索引变成了外层索引,原来的列索引变成了内层索引了。

df_obj = pd.DataFrame(np.random.randint(0,10, (5,2)), columns=['data1', 'data2'])
print df_obj
   data1  data2
0      9      0
1      7      4
2      6      1
3      2      7
4      9      1
stacked = df_obj.stack()
print stacked
0  data1    9
   data2    0
1  data1    7
   data2    4
2  data1    6
   data2    1
3  data1    2
   data2    7
4  data1    9
   data2    1
dtype: int64

打印重构之后的数据类型,发现已经从DataFrame转变为了Series类型了。

打印新数据的Index的类型,发现索引的格式变成了多层索引了。

print type(stacked)
print type(stacked.index)

unstack

unstack会默认多层索引的series转变为DataFrame,默认情况下是对内索引进行操作,即将内所有转变为DataFrame的列索引。

也可以指定操作的索引级别。lavel=0表示操作外层索引。

# 默认操作内层索引
print stacked.unstack()
   data1  data2
0      9      0
1      7      4
2      6      1
3      2      7
4      9      1
# 通过level指定操作索引的级别
print stacked.unstack(level=0)
       0  1  2  3  4
data1  9  7  6  2  9
data2  0  4  1  7  1
相关TAG标签
上一篇:Navicat8注册码+mysql配置教程
下一篇:numpy.random.randint()简介
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站