我有大约1000万行数据,并试图按Power中的数据按几个列分组。我试着用"Group“按钮的Power编辑器来完成这个任务,但是性能大约需要15-20分钟。然后,为了提高性能,我尝试了Pandas groupby函数,但是结果只是显示值。
我的脚本是:data = data.groupby(['date', 'client ', 'product'] ).sum()
输入数据
`date` `client` `product` `qty` `total amount` 07-05-2022 Client-1 Phone 5 5000
07-05-2022 Client-2 PC 8 8500
07-05-2022 Client-2 PC 8 8500
输出数据
qty total amount
5 5000
16 17000
如您所见,python函数的groupby不像预期的那样工作。有人能帮我解决这个问题吗?提前谢谢。
发布于 2022-05-07 13:53:25
你想要这样的东西?
data = data.groupby(["date", "client", "product"], as_index=False).sum()
print(data)
date client product qty totalamount
0 07-05-2022 Client-1 Phone 5 5000
1 07-05-2022 Client-2 PC 16 17000发布于 2022-05-07 13:58:10
我创造了你的数据。
import pandas as pd
df = pd.DataFrame({'date':['07-05-2022','07-05-2022','07-05-2022'],
'client':['Client-1','Client-2','Client-2'],
'product':['Phone','PC','PC'],
'qty':[5,8,8],
'total amount': [5000,8500,8500]})关键是在as_index=False中添加groupby论证
df_grouped = df.groupby(['date', 'client', 'product'], as_index=False).sum()这是结果
date client product qty total amount
0 07-05-2022 Client-1 Phone 5 5000
1 07-05-2022 Client-2 PC 16 17000https://stackoverflow.com/questions/72153064
复制相似问题