我正在尝试获取度量的总和、平均值和计数df.groupby(['id', 'pushid']).agg({"sess_length": [ np.sum, np.mean, np.count]})但是我得到“模块'numpy'没有属性'count'”,并且我尝试了不同的方式来表达计数功能,但无法让它工作。我如何将汇总记录数与其他指标一起汇总?
3 回答
撒科打诨
TA贡献1934条经验 获得超2个赞
您可以使用字符串代替函数,如下所示:
df = pd.DataFrame(
{"id": list("ccdef"), "pushid": list("aabbc"),
"sess_length": [10, 20, 30, 40, 50]}
)
df.groupby(["id", "pushid"]).agg({"sess_length": ["sum", "mean", "count"]})
哪些输出:
sess_length
sum mean count
id pushid
c a 30 15 2
d b 30 30 1
e b 40 40 1
f c 50 50 1
弑天下
TA贡献1818条经验 获得超8个赞
这可能有效:
df.groupby(['id', 'pushid']).agg({"sess_length": [ np.sum, np.mean, np.**size**]})
Helenr
TA贡献1780条经验 获得超3个赞
我想你的意思是:
df.groupby(['id', 'pushid']).agg({"sess_length": [ 'sum', 'count','mean']})
如pandas 文档中所述,您可以使用诸如“sum”、“count”之类的字符串参数。TBH 这是进行这些聚合的更可取的方式。
添加回答
举报
0/150
提交
取消