在excel中使用pivot时聚合多行[duplicate]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在excel中使用pivot时聚合多行[duplicate]相关的知识,希望对你有一定的参考价值。
这个问题在这里已有答案:
我有以下数据:
因此,对于每个设备,9月,10月和11月的10个通道都有数小时的数据,这些需要在device_id上进行旋转时进行求和,因此输出将如图像的第二部分所示。
以下是文本格式的数据:
device_id month_id channel hours brand
214 201711 A 2.311 S
214 201710 A 6.071 S
214 201709 A 0.55 S
214 201711 B 0.603 S
214 201710 B 2.185 S
214 201709 B 2.62 S
214 201711 C 0.82 S
214 201710 C 25.70 S
214 201709 C 17.73 S
Output:
device_id A B C brand
214 8.933054 5.412499 44.261665 S
所有数据都在熊猫数据框中,我想使用数据透视表。有人可以帮我这个吗?
答案
看起来你想要一个pivot_table
操作 -
df = df.pivot_table(index=['device_id', 'brand'],
columns='channel',
values='hours',
aggfunc=sum)
.reset_index()
df.columns.name = None
df
device_id brand A B C
0 214 S 8.932 5.408 44.25
另一答案
一内胆:
df.groupby(["device_id", "brand", "channel"])["hours"].sum().unstack()
这使:
channel A B C
device_id brand
214 S 8.932 5.408 44.25
以上是关于在excel中使用pivot时聚合多行[duplicate]的主要内容,如果未能解决你的问题,请参考以下文章