数据框中的非空值百分比

时间:2019-06-03 11:52:04

标签: pandas dataframe

我想计算数据帧中非空值的平均百分比:

我这样尝试:

  

df_op.notnull()。sum()

但是我得到了每个变量的列表,这些变量的总和为非空值。

您能帮我计算非空值的平均百分比吗?等于非空值之和除以总值。

谢谢

2 个答案:

答案 0 :(得分:0)

您可以尝试以下操作:

示例:

df=pd.DataFrame({'val':[1,2,3,4,5,6,np.nan,7]})
print(df)
# average percentage of non null
print(df.val.sum()/len(df.val))

输出:

   val
0  1.0
1  2.0
2  3.0
3  4.0
4  5.0
5  6.0
6  NaN
7  7.0

3.5

希望这可以为您提供帮助:)

答案 1 :(得分:0)

这取决于您是否要为整个df提供非空值,然后:

notnulls = sum([len(df_op[df_op[col].notnull()]) for col in df_op.columns]) / sum([len(df_op) for col in df_op.columns])

如果您希望每列都不为空,则

for col in df_op.columns:
    notnulls = len(df_op[df_op[col].notnull()]) / len(df_op)
```