Python Pandas Serices/Dataframe.any()
Python是一种进行数据分析的伟大语言,主要是因为以数据为中心的Python包的奇妙生态系统。Pandas就是这些包中的一个,它使导入和分析数据变得更加容易。
Pandas any()方法同时适用于系列和Dataframe。它检查调用者对象(Dataframe或系列)中的任何值是否为0,并为此返回True。如果所有的值都是0,它将返回False。
语法: DataFrame.any(axis=0, bool_only=None, skipna=True, level=None, kwargs)
参数:
axis:0或’index’用于按行应用方法,1或’columns’用于按列应用。
bool_only:在数据框架中检查是否有只有布尔值的系列,如果没有找到,它将只使用布尔值。由于只有一列,该参数不用于系列。
skipna: 布尔值,如果是假的,整个NaN列/行的返回值为真。
level: int或str,在多级的情况下指定级别。
返回类型: 布尔系列
例子#1:
在这个例子中,通过向Pandas DataFrame()方法传递字典来创建一个样本数据框。空值也被传递给一些索引,使用Numpy np.nan来检查空值的行为。因为在这个例子中,该方法是在索引上实现的,axis参数保持为0(代表行)。
# importing pandas module
import pandas as pd
# importing numpy module
import numpy as np
# creating dictionary
dic = {'A': [1, 2, 3, 4, 0, np.nan, 3],
'B': [3, 1, 4, 5, 0, np.nan, 5],
'C': [0, 0, 0, 0, 0, 0, 0]}
# making dataframe using dictionary
data = pd.DataFrame(dic)
# calling data.any column wise
result = data.any(axis = 0)
# displaying result
result
输出:
如输出结果所示,由于最后一列的所有值都等于零,因此只对该列返回False。
示例#2:
在这个例子中,通过向Pandas DataFrame()方法传递字典来创建一个样本数据框,就像上面的例子一样。但是在每一列中的每一个值都传递1来实现,而不是将0传递给axis参数。
# importing pandas module
import pandas as pd
# importing numpy module
import numpy as np
# creating dictionary
dic = {'A': [1, 2, 3, 4, 0, np.nan, 3],
'B': [3, 1, 4, 5, 0, np.nan, 5],
'C': [0, 0, 0, 0, 0, 0, 0]}
# making dataframe using dictionary
data = pd.DataFrame(dic)
# calling data.any column wise
result = data.any(axis = 1)
# displaying result
result
输出:
如输出中所示,只有所有数值都是0或NaN和0的行才会返回False。