在pandas中,sum()和count()有什么区别?

4

你能帮我理解下面提到的语句之间的区别吗?假设Survived列包含二进制数据(0,1),它们给出不同的答案:

df_train[df_train.Sex == 'female'].Survived.count()
df_train[df_train.Sex == 'female'].Survived.sum()

1
count() 函数返回列中的项目数,而 sum 函数返回列中值的总和。 - Advay Umare
3个回答

11

sum() 是用于像 1+0 = 1 这样的求和操作。如果数据是 33,那么它将返回 6

count() 返回行数,因此它将返回 2


2

count() 只会计算行数。

sum() 会对1和0进行求和。


3
count() 只计算非缺失值的数量,因此具有 NaN 或其他缺失值的记录不包括在该计数中。 - 3novak

2

count()是一个字符串函数,用于计算单个类别的总数。这就是在使用聚合函数时将其放在引号中的原因。

例如:

grouped = order_products_all.groupby("product_id")["reordered"].aggregate(
    {'reorder_sum': sum,'reorder_total': 'count'}
).reset_index()

sum()是一个整数函数,用于计算唯一类别的数量之和。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接