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


Python pandas.DataFrame.eq用法及代码示例


用法:

DataFrame.eq(other, axis='columns', level=None)

获取 DataFrame 和其他元素的等于(二元运算符 eq )。

在灵活的包装器(eqneleltgegt)到比较运算符。

等效于==!=<=<>=>,支持选择轴(行或列)和级别进行比较。

参数

other标量、序列、系列或数据帧

任何单元素或多元素数据结构,或list-like 对象。

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

是按索引(0 或‘index’)还是按列(1 或‘columns’)进行比较。

level整数或标签

跨级别广播,匹配传递的 MultiIndex 级别上的索引值。

返回

布尔 DataFrame

比较的结果。

注意

不匹配的索引将合并在一起。 NaN 值被认为是不同的(即 NaN != NaN )。

例子

>>> df = pd.DataFrame({'cost':[250, 150, 100],
...                    'revenue':[100, 250, 300]},
...                   index=['A', 'B', 'C'])
>>> df
   cost  revenue
A   250      100
B   150      250
C   100      300

使用运算符或方法与标量进行比较:

>>> df == 100
    cost  revenue
A  False     True
B  False    False
C   True    False
>>> df.eq(100)
    cost  revenue
A  False     True
B  False    False
C   True    False

otherSeries 时,DataFrame 的列与 other 的索引对齐并广播:

>>> df != pd.Series([100, 250], index=["cost", "revenue"])
    cost  revenue
A   True     True
B   True    False
C  False     True

使用方法控制广播轴:

>>> df.ne(pd.Series([100, 300], index=["A", "D"]), axis='index')
   cost  revenue
A  True    False
B  True     True
C  True     True
D  True     True

与任意序列进行比较时,列数必须与 other 中的数字元素匹配:

>>> df == [250, 100]
    cost  revenue
A   True     True
B  False    False
C  False    False

使用方法控制轴:

>>> df.eq([250, 250, 100], axis='index')
    cost  revenue
A   True    False
B  False     True
C   True    False

与不同形状的 DataFrame 进行比较。

>>> other = pd.DataFrame({'revenue':[300, 250, 100, 150]},
...                      index=['A', 'B', 'C', 'D'])
>>> other
   revenue
A      300
B      250
C      100
D      150
>>> df.gt(other)
    cost  revenue
A  False    False
B  False    False
C  False     True
D  False    False

按级别与 MultiIndex 进行比较。

>>> df_multindex = pd.DataFrame({'cost':[250, 150, 100, 150, 300, 220],
...                              'revenue':[100, 250, 300, 200, 175, 225]},
...                             index=[['Q1', 'Q1', 'Q1', 'Q2', 'Q2', 'Q2'],
...                                    ['A', 'B', 'C', 'A', 'B', 'C']])
>>> df_multindex
      cost  revenue
Q1 A   250      100
   B   150      250
   C   100      300
Q2 A   150      200
   B   300      175
   C   220      225
>>> df.le(df_multindex, level=1)
       cost  revenue
Q1 A   True     True
   B   True     True
   C   True     True
Q2 A  False     True
   B   True    False
   C   True    False

相关用法


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