maxframe.dataframe.DataFrame.ne#

DataFrame.ne(other, axis='columns', level=None, fill_value=None)#

获取 DataFrame 和 other 的不等于比较结果,按元素进行(二元运算符 ne)。在比较运算符的灵活包装器(eqneleltgegt)之中。

等价于 dataframe != other,支持选择比较的轴(行或列)和层级。

参数:
  • other (scalar, sequence, Series, or DataFrame) -- 任意单个或多个元素的数据结构,或类列表对象。

  • axis ({0 or 'index', 1 or 'columns'}, default 'columns') -- 按索引(0 或 'index')或列(1 或 'columns')进行比较。

  • level (int or label) -- 在指定层级上进行广播,匹配传入的 MultiIndex 层级上的索引值。

返回:

比较结果。

返回类型:

DataFrame of bool

参见

DataFrame.eq

按元素比较 DataFrame 是否相等。

DataFrame.ne

按元素比较 DataFrame 是否不相等。

DataFrame.le

按元素比较 DataFrame 是否小于或等于。

DataFrame.lt

按元素比较 DataFrame 是否严格小于。

DataFrame.ge

按元素比较 DataFrame 是否大于或等于。

DataFrame.gt

按元素比较 DataFrame 是否严格大于。

备注

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

示例

>>> import maxframe.dataframe as md
>>> df = md.DataFrame({'cost': [250, 150, 100],
...                    'revenue': [100, 250, 300]},
...                   index=['A', 'B', 'C'])
>>> df.execute()
   cost  revenue
A   250      100
B   150      250
C   100      300

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

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

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

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

使用该方法控制广播轴:

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

当与任意序列比较时,DataFrame 的列数必须与 other 中元素的数量匹配:

>>> (df == [250, 100]).execute()
    cost  revenue
A   True     True
B  False    False
C  False    False

使用该方法控制轴:

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

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

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

按级别与 MultiIndex 进行比较。

>>> df_multindex = md.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.execute()
      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).execute()
       cost  revenue
Q1 A   True     True
   B   True     True
   C   True     True
Q2 A  False     True
   B   True    False
   C   True    False