如何计算Pandas数据框架中某一列的NaN出现次数
数据框被划分为若干单元,这些单元可以存储属于某些数据结构的值,也可能包含缺失或不确定的值。pandas包包含各种内置函数,用于检查数据框架单元格中的值是否为不确定值,也用于对这些不确定值进行聚合。
方法一:在数据帧上使用内置的方法isna()和sum()。
函数isna()用于检测缺失/无值,并返回一个布尔数组,其长度等于应用该函数的数据框架元素,sum()方法用于计算这些缺失值的总数。
# importing necessary packages
import pandas as pd
import numpy as np
# creating data
data = [[1, "M", np.nan], [5, "A", 3.2], [
np.nan, np.nan, 4.6], [1, "D", np.nan]]
# converting data to data frame
data_frame = pd.DataFrame(data,
columns=["col1", "col2", "col3"])
# printing original data frame
print("\nOriginal Data Frame:")
print(data_frame)
# counting NaN values of col1
cnt = data_frame["col1"].isna().sum()
# printing count of NaN values
print("\nNan values in col1:", cnt)
输出:
方法#2:使用数据框架的长度
数据框任何特定列中所包含的数值的计数要减去dataframe的长度,也就是数据框中的行数。count()_方法给出了指定列中NaN值的总数,length(dataframe)给出了数据框的长度,即数据框中的总行数。
# importing necessary packages
import pandas as pd
import numpy as np
# creating data
data = [[1, "M", np.nan], [5, "A", 3.2],
[np.nan, np.nan, 4.6], [1, "D", np.nan]]
# converting data to data frame
data_frame = pd.DataFrame(data, columns=["col1", "col2", "col3"])
# printing original data frame
print("\nOriginal Data Frame:")
print(data_frame)
# counting NaN values of col1
length = len(data_frame)
count_in_col3 = data_frame['col3'].count()
cnt = length - count_in_col3
# printing count of NaN values
print("\nNan in col3:", cnt)
输出: