DataFrame.unstack(level=-1, fill_value=None)[source]
Pivot(必要的分层)索引标签的一个级别。
返回具有列标签新级别的DataFrame,其最内部级别由pivoted索引标签组成。
如果索引不是多索引,则输出将是一个Series(当列不是多索引时,类似于stack)。
参数:level:int、str或它们的list,默认值为-1(最后一层)
要unstack的索引级别,可以通过级别名称。
fill_value :int, str 或 dict
如果unstack产生缺少的值,请用该值替换NaN。
返回值:Series 或 DataFrame
例子>>> index = pd.MultiIndex.from_tuples([('one', 'a'), ('one', 'b'),
... ('two', 'a'), ('two', 'b')])
>>> s = pd.Series(np.arange(1.0, 5.0), index=index)
>>> s
one a 1.0
b 2.0
two a 3.0
b 4.0
dtype: float64>>> s.unstack(level=-1)
a b
one 1.0 2.0
two 3.0 4.0>>> s.unstack(level=0)
one two
a 1.0 3.0
b 2.0 4.0>>> df = s.unstack(level=0)
>>> df.unstack()
one a 1.0
b 2.0
two a 3.0
b 4.0
dtype: float64