Pandas any(~) 方法扫描 DataFrame 的每一行或每一列,如果行/列包含至少一个非零值或布尔值 True ,则为该行/列返回 True 。
注意
在 Pandas 中。布尔值 True 相当于 1 ,而 False 相当于 0 。
参数
1.axis | int 或 string | optional
是否扫描源DataFrame的每一行或每一列:
|
轴 |
说明 |
返回类型 |
|---|---|---|
|
|
扫描每一列 |
|
|
|
扫描每一行 |
|
|
|
扫描整个DataFrame |
|
默认情况下,axis=0 。
2. bool_only | boolean | optional
-
如果
True,则仅扫描布尔列。 -
如果
False,则将扫描所有列。
默认情况下,bool_only=False 。
3. skipna | boolean | optional
-
如果
True,NaN将被视为False。 -
如果
False,则NaN将被视为True。
默认情况下,skipna=True 。
4. level | int 或 string | optional
目标水平。仅当您的 DataFrame 是多索引时,这才有意义。
返回值
返回类型取决于axis:
-
如果
axis=None,则返回单个布尔值。 -
否则,返回一系列布尔值。
例子
考虑以下 DataFrame :
df = pd.DataFrame({"A":[2,0,1], "B":[1,0,0], "C":[0,0,0]})
df
A B C
0 2 1 0
1 0 0 0
2 1 0 0
逐列扫描
按列扫描是否存在非零值:
df.any() # or explicitly set axis=0
A True
B True
C False
dtype: bool
在此,请注意以下事项:
-
A和B列中至少有一个非零值,因此为这些列返回True。 -
自
axis != None以来,返回类型为Series。
逐行扫描
仅供您参考,我们再次在此显示df:
df
A B C
0 2 1 0
1 0 0 0
2 1 0 0
要按行扫描,请设置 axis=1 是否存在非零值:
df.any(axis=1) # returns a Series
0 True
1 False
2 True
dtype: bool
扫描整个DataFrame
要扫描整个 DataFrame 是否存在非零值,请设置 axis=None :
df.any(axis=None)
True
仅扫描布尔列
考虑以下 DataFrame :
df = pd.DataFrame({"A":[2,0], "B":[True,False], "C":[0,0]})
df
A B C
0 2 True 0
1 0 False 0
要仅扫描包含布尔值的列,请设置 bool_only=True :
df.any(bool_only=True)
B True
dtype: bool
请注意如何仅考虑列 B,因为它是唯一类型为 boolean 的列。
考虑缺失值
默认情况下, skipna=True ,这意味着将跳过缺失值(视为 0 或 False )。
作为示例,请考虑以下 DataFrame:
df = pd.DataFrame({"A": [pd.np.nan, 0]})
df
A
0 NaN
1 0.0
调用 any() 给出:
df.any() # or skipna=True
A False
dtype: bool
在这里,我们得到 False ,因为跳过了 NaN ,A 列中的所有值都是 0 。
相反,设置 skipna=False 会将 NaN 视为 True :
df.any(skipna=False)
A True
dtype: bool
由于我们现在 A 列中至少有一个非零值,因此返回 True。
相关用法
- Python Pandas DataFrame agg方法用法及代码示例
- Python Pandas DataFrame all方法用法及代码示例
- Python Pandas DataFrame add方法用法及代码示例
- Python Pandas DataFrame asfreq方法用法及代码示例
- Python PySpark DataFrame alias方法用法及代码示例
- Python Pandas DataFrame append方法用法及代码示例
- Python Pandas DataFrame asof方法用法及代码示例
- Python Pandas DataFrame add_prefix方法用法及代码示例
- Python Pandas DataFrame add_suffix方法用法及代码示例
- Python Pandas DataFrame at属性用法及代码示例
- Python Pandas DataFrame axes属性用法及代码示例
- Python Pandas DataFrame astype方法用法及代码示例
- Python Pandas DataFrame align方法用法及代码示例
- Python Pandas DataFrame assign方法用法及代码示例
- Python Pandas DataFrame apply方法用法及代码示例
- Python Pandas DataFrame applymap方法用法及代码示例
- Python Pandas DataFrame at_time方法用法及代码示例
- Python Pandas DataFrame abs方法用法及代码示例
- Python Pandas DataFrame empty属性用法及代码示例
- Python Pandas DataFrame pop方法用法及代码示例
- Python Pandas DataFrame nsmallest方法用法及代码示例
- Python Pandas DataFrame sample方法用法及代码示例
- Python Pandas DataFrame items方法用法及代码示例
- Python Pandas DataFrame max方法用法及代码示例
- Python Pandas DataFrame swaplevel方法用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas DataFrame | any method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
