Python pandas.DataFrame.unstack函数方法的使用

Pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。本文主要介绍一下Pandas中pandas.DataFrame.unstack方法的使用。

DataFrame.unstack(level=-1, fill_value=None) [source]

Pivot(必要的分层)索引标签的一个级别。

返回具有列标签新级别的DataFrame,其最内部级别由pivoted索引标签组成。

如果索引不是多索引,则输出将是一个Series(当列不是多索引时,类似于stack)。

参数

level intstr或它们的list,默认值为-1(最后一层)

要unstack的索引级别,可以通过级别名称。

fill_value :int, strdict

如果unstack产生缺少的值,请用该值替换NaN

返回值:

SeriesDataFrame

例子

>>> 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

 文档:pandas.DataFrame.unstack.html

推荐阅读
cjavapy编程之路首页