gpt4 book ai didi

python - 使用 Pandas 按特定列分组时找出空值的百分比

转载 作者:太空宇宙 更新时间:2023-11-04 02:52:34 24 4
gpt4 key购买 nike

下面是我的数据框的一个小快照:

avg_rating_of_driver    avg_rating_by_driver    bins
0 4.7 5.0 (3, 125]
1 5.0 5.0 NaN
2 4.3 5.0 (2, 3]
3 4.6 4.9 (3, 125]
4 4.4 4.9 (3, 125]
5 3.5 5.0 (1, 2]
6 NaN 4.0 (0, 1]
7 5.0 5.0 (1, 2]
8 4.5 5.0 (1, 2]
9 NaN 5.0 (0, 1]
10 5.0 4.9 (0, 1]
11 4.0 5.0 (2, 3]
12 NaN 5.0 (0, 1]
13 4.0 5.0 NaN
14 NaN 5.0 (0, 1]
15 NaN 5.0 (0, 1]
16 5.0 3.0 (0, 1]
17 3.9 4.8 NaN
18 4.6 4.8 (3, 125]
19 5.0 5.0 NaN
20 NaN 3.0 (0, 1]
21 NaN 5.0 (0, 1]
22 NaN 5.0 NaN
23 5.0 5.0 NaN
24 4.5 4.7 (3, 125]
25 NaN 5.0 (0, 1]

bin 具有以下值:

 (0,1] (1,2] (2,3] (3,125]

我对按 bin 分组 并找出每个 bin 中的空值百分比感兴趣。

这意味着当按 bins 分组时,有多少百分比的列具有该行的 NA 值

最佳答案

这样的事情怎么样:

dg = df.groupby('bins')
for col in df.columns:
if col!='bins':
print (dg[col].apply(pd.isnull).mean())

因为 dg[col].apply(pd.isnull) 是一个由 1 和 0' 组成的数组,它的平均值等于所有 1 的总和除以总数,也就是 NaN 值!

你也可以在没有for循环的情况下编写它:

dg.apply(pd.isnull).mean()

但是这种情况下 bins 也返回零值的行。

关于python - 使用 Pandas 按特定列分组时找出空值的百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43397016/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com