如何获取间隔pandas DataFrame之外的值



我试图在pandas数据框中获得间隔之外的值,并且我试图避免遍历行。有什么办法吗?

这就是我所尝试的,但是它给出了错误

ValueError:一个Series的真值是不明确的。使用a.empty a.bool (), a.item (), a.any()或所有()。

df = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))
fence_low = 30
fence_high = 70
df_out = df[(df['A'] <= fence_low) or (df['A'] >= fence_high)]
df_out

我认为您想使用位或运算符而不是or关键字:

df[(df['A'] <= fence_low) | (df['A'] >= fence_high)]

您可以否定between:

df_out = df[~df['A'].between(fence_low, fence_high, inclusive='neither')]

您可以使用logical_and

df_out = df[np.logical_and(df.A<=fence_high , df.A>=fence_low)]

相关内容

  • 没有找到相关文章

最新更新