pandas.DataFrame.any#

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

返回是否有任何元素是 True,可能沿轴进行。

除非序列中或 DataFrame 轴上有至少一个元素为 True 或等效值(例如,非零或非空),否则返回 False。

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

指示应约简哪个或哪些轴。对于 Series,此参数未使用,默认为 0。

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

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

  • None:约简所有轴,返回一个标量。

<strong>bool_only</strong>bool,默认 False

仅包括布尔列。不适用于 Series。

<strong>skipna</strong>bool, default True

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

**kwargsany,默认为 None

附加关键字不起作用,但为了兼容 NumPy 可能仍然被接受。

Returns:
Series 或 DataFrame

如果指定了 level,则返回 DataFrame;否则,返回 Series。

参见

numpy.any

此方法的 NumPy 版本。

Series.any

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

Series.all

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

DataFrame.any

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

DataFrame.all

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

Examples

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)