以下代码将打印True,因为Series至少包含一个大于1的元素。然而,它似乎有点不符合Python的风格。如果想要返回True,当Series包含一个大于特定值的数字,是否有更符合Python风格的方法?
import pandas as pd
s = pd.Series([0.5, 2])
print True in (s > 1) # True
上述答案不仅不符合Python的规范,有时还会因为某些原因返回错误的结果。例如:
s = pd.Series([0.5])
print True in (s < 1) # False
any(axis=1).any()
这样的东西吗?首先,它将在您的子集中的所有行中进行检查,并生成Pandas Series。其次,您将检查系列是否有任何True
值。如果没有,您可以在评论中提供示例,或者最好提出一个带有所有细节的新问题。 - Anton Protopopov(df[['A', 'B', 'C']] > 1).any(axis=1)
的东西。该代码的作用是判断DataFrame中'A'、'B'、'C'三列是否存在大于1的值,并返回一个布尔Series,表示每行是否至少有一个元素大于1。 - Anton Protopopov