我有一个Pandas DF,我需要过滤掉一些包含值== 0的行,用于特征'a'和特征'b'.
为了检查值,我运行以下命令:
DF1 = DF[DF['a'] == 0]
Run Code Online (Sandbox Code Playgroud)
返回正确的值.同样,通过这样做:
DF2 = DF[DF['b'] == 0]
Run Code Online (Sandbox Code Playgroud)
我可以看到特征'b'的0值.
但是,如果我尝试使用OR操作数在单行代码中组合这些2:
DF3 = DF[DF['a'] == 0 | DF['b'] == 0]
Run Code Online (Sandbox Code Playgroud)
我明白了:
TypeError: cannot compare a dtyped [float64] array with a scalar of type [bool]
Run Code Online (Sandbox Code Playgroud)
这里发生了什么事?