当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pandas.Series.compare用法及代码示例


用法:

Series.compare(other, align_axis=1, keep_shape=False, keep_equal=False)

与另一个系列进行比较并显示差异。

参数

otherSeries

要比较的对象。

align_axis{0 或 ‘index’,1 或 ‘columns’},默认 1

确定要在哪个轴上对齐比较。

  • 0,或‘index’产生的差异垂直堆叠

    从 self 和 other 交替绘制的行。

  • 1,或‘columns’产生的差异水平对齐

    从 self 和 other 交替绘制列。

keep_shape布尔值,默认为 False

如果为真,则保留所有行和列。否则,仅保留具有不同值的那些。

keep_equal布尔值,默认为 False

如果为真,则结果保持相等的值。否则,相等的值显示为 NaN。

返回

Series或DataFrame

如果轴为 0 或 ‘index’,则结果将是一个系列。生成的索引将是一个 MultiIndex,其中 ‘self’ and ‘other’ 在内部层交替堆叠。

如果轴为 1 或 ‘columns’,则结果将是一个 DataFrame。它将有两列,即‘self’ and ‘other’。

注意

匹配的 NaN 不会显示为差异。

例子

>>> s1 = pd.Series(["a", "b", "c", "d", "e"])
>>> s2 = pd.Series(["a", "a", "c", "b", "e"])

对齐列上的差异

>>> s1.compare(s2)
  self other
1    b     a
3    d     b

堆叠索引的差异

>>> s1.compare(s2, align_axis=0)
1  self     b
   other    a
3  self     d
   other    b
dtype:object

保留所有原始行

>>> s1.compare(s2, keep_shape=True)
  self other
0  NaN   NaN
1    b     a
2  NaN   NaN
3    d     b
4  NaN   NaN

保留所有原始行以及所有原始值

>>> s1.compare(s2, keep_shape=True, keep_equal=True)
  self other
0    a     a
1    b     a
2    c     c
3    d     b
4    e     e

相关用法


注:本文由纯净天空筛选整理自pandas.pydata.org大神的英文原创作品 pandas.Series.compare。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。