计数非空值 Pandas
Count Non-Null Values Pandas
我有这组数据:
UserID AccountNum
A001 12345
A001 NaN
A001 56789
我的愿望输出是这样的,我想统计AccNum的个数,但我不想统计空值
UserID TotalAccNum
A001 2
我试过这个查询:
data.groupby('UserID').agg({'AccountNum': ['count']})
您的解决方案是正确的。
如果不起作用,NAN
是字符串,而不是缺失值。
所以需要:
data['AccountNum'] = data['AccountNum'].astype(float)
或者:
data['AccountNum'] = pd.to_numeric(data['AccountNum'], errors='coerce')
然后您的解决方案应该简化:
df = data.groupby('UserID')['AccountNum'].count().reset_index(name='TotalAccNum')
试试这个:
df[df['AccountNum'].notnull()].count()
我有这组数据:
UserID AccountNum
A001 12345
A001 NaN
A001 56789
我的愿望输出是这样的,我想统计AccNum的个数,但我不想统计空值
UserID TotalAccNum
A001 2
我试过这个查询:
data.groupby('UserID').agg({'AccountNum': ['count']})
您的解决方案是正确的。
如果不起作用,NAN
是字符串,而不是缺失值。
所以需要:
data['AccountNum'] = data['AccountNum'].astype(float)
或者:
data['AccountNum'] = pd.to_numeric(data['AccountNum'], errors='coerce')
然后您的解决方案应该简化:
df = data.groupby('UserID')['AccountNum'].count().reset_index(name='TotalAccNum')
试试这个:
df[df['AccountNum'].notnull()].count()