如何将两个变量合并成一个,以便在pandas中获得总频率?

2024-10-03 11:14:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我有个问题

如何将两个变量合并为一个,以获得总体频率

一个例子

Name, Count
Watch   2
Watch   3
Jacob   4
Jacob   3
Ashley  2
Ashley  2

我想要的输出是

Name    Count
Watch,    5
Jacob,    7
Ashley,   4

对于大约700行的数据集,这就是我一直在尝试的groupby

df.groupby(["NameOfProduct", "Number_Count"]).size().reset_index(name="Time")

它只给我次数,变量出现在数据集中

希望你们能帮忙

谢谢,晚上好:)


Tags: 数据namenumberdfsizecount例子频率
1条回答
网友
1楼 · 发布于 2024-10-03 11:14:46

我认为你的问题是你也在按Count分组。要获得正确的groupby,您只需要groupbyName。例如:

df.groupby(['Name']).sum()

这将取数据帧中每个唯一名称的Count之和,这将导致您请求的输出

如果按['Name','Count']分组并使用size(),则每个组的值都将为1,但Name = AshleyCount=2时除外(在本例中,结果为2)。这是因为size将返回每个唯一组的大小

相关问题 更多 >