本文介绍了统计数据帧列中True/False的出现次数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
有没有一种方法可以计算一列中布尔值的出现次数,而不必遍历DataFrame?
做类似的事情
df[df["boolean_column"]==False]["boolean_column"].sum()
将不起作用,因为False的值为0,因此零和将始终返回0。
显然,您可以通过循环遍历列并检查来计算出现的次数,但我想知道是否有一种蟒蛇式的方法来做到这一点。
推荐答案
使用pd.Series.value_counts()
:
>> df = pd.DataFrame({'boolean_column': [True, False, True, False, True]})
>> df['boolean_column'].value_counts()
True 3
False 2
Name: boolean_column, dtype: int64
如果要分别计算False
和True
,可以使用pd.Series.sum()
+~
:
>> df['boolean_column'].values.sum() # True
3
>> (~df['boolean_column']).values.sum() # False
2
这篇关于统计数据帧列中True/False的出现次数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!