DataFrame行列转换:stack()和unstack()
2020-10-03 本文已影响0人
我住永安当
stack()列转行:原本的一个字段的数据放在一'行'上
unstack()行转列:原本的一'行'数据放在一个字段上,(默认操作为最内层,可用分层级别的编号或名称对其他级别进行unstack)
首先构建数据帧
data = pd.DataFrame(np.arange(12).reshape((3,4)),
index = pd.Index(['a','b','c'],
name='state'),
columns=pd.Index(['one','two','three','four'],
name='number'))
data

data.stack()

data.stack().index
#state的级别为0,number的级别为1,unstack()默认为0

data.stack().unstack(0)

data.stack().unstack(1)
