pandas.DataFrame.any#

DataFrame.any(*, axis=0, bool_only=False, skipna=True, =**kwargs)[源代码]#

返回任何元素是否为 True,可能沿轴。

除非系列中的某个元素或 Dataframe 轴上存在至少一个为 True 或等效(例如,非零或非空)的元素,否则返回 False。

参数:
axis{0 或 ‘index’, 1 或 ‘columns’, None}, 默认 0

指示应该减少哪个轴。对于 Series,此参数未使用,默认为 0。

  • 0 / ‘index’ : 减少索引,返回一个索引为原始列标签的 Series。

  • 1 / ‘columns’ : 减少列,返回一个索引为原始索引的 Series。

  • None : 减少所有轴,返回一个标量。

bool_onlybool, 默认 False

仅包含布尔列。未为 Series 实现。

skipnabool, 默认 True

排除 NA/null 值。如果整行/整列为 NA 且 skipna 为 True,则结果为 False,如同空行/列一样。如果 skipna 为 False,则 NA 被视为 True,因为它们不等于零。

**kwargsany, 默认 None

其他关键字参数没有效果,但可能被接受以与 NumPy 兼容。

返回:
Series 或标量

如果 axis=None,则返回一个标量布尔值。否则,返回一个索引与 argument 匹配的 Series。

另请参阅

numpy.any

此方法的 Numpy 版本。

Series.any

返回是否有任何元素为 True。

Series.all

返回是否有所有元素为 True。

DataFrame.any

返回请求的轴上是否有任何元素为 True。

DataFrame.all

返回请求的轴上是否有所有元素为 True。

示例

Series

对于 Series 输入,输出是一个标量,指示是否有任何元素为 True。

>>> pd.Series([False, False]).any()
False
>>> pd.Series([True, False]).any()
True
>>> pd.Series([], dtype="float64").any()
False
>>> pd.Series([np.nan]).any()
False
>>> pd.Series([np.nan]).any(skipna=False)
True

DataFrame

每列是否至少包含一个 True 元素(默认)。

>>> df = pd.DataFrame({"A": [1, 2], "B": [0, 2], "C": [0, 0]})
>>> df
   A  B  C
0  1  0  0
1  2  2  0
>>> df.any()
A     True
B     True
C    False
dtype: bool

按列聚合。

>>> df = pd.DataFrame({"A": [True, False], "B": [1, 2]})
>>> df
       A  B
0   True  1
1  False  2
>>> df.any(axis="columns")
0    True
1    True
dtype: bool
>>> df = pd.DataFrame({"A": [True, False], "B": [1, 0]})
>>> df
       A  B
0   True  1
1  False  0
>>> df.any(axis="columns")
0    True
1    False
dtype: bool

使用 axis=None 对整个 DataFrame 进行聚合。

>>> df.any(axis=None)
True

空 DataFrame 的 any 是一个空 Series。

>>> pd.DataFrame([]).any()
Series([], dtype: bool)