我必须对不包含任何SmallSeller产品(SellCategory)的事务(InvoiceNo)进行分组,并且我不确定如何继续。
我最终将不得不比较这两种交易(包含SmallSeller产品和不包含任何SmallSeller产品的交易)产生的收入(Quantity*UnitPrice)。
(这是我的数据示例)
InvoiceNo SellCategory Revenue
23 Medium-Seller 54
23 Best-Seller 108
23 Best-Seller 71
24 Medium-Seller 43
24 Small-Seller 18
25 Best-Seller 89
25 Small-Seller 23
26 Medium-Seller 65
26 Best-Seller 98
26 Small-Seller 23发布于 2019-04-10 17:25:54
您可以按以下方式分组,然后继续进一步操作:
df[df.SellCategory != 'Small-Seller'].groupby('InvoiceNo')发布于 2019-04-10 20:34:32
df_pivot=df.pivot_table(index='InvoiceNo',columns='SellCategory',values='Revenue',aggfunc='sum').reset_index()发布于 2019-04-10 21:23:07
首先,我们可以挑选相关的行,然后在InvoiceNo上使用groupby聚合Revenue。最后,我们将两种数据帧连接在一起,并对列进行重命名:
df1 = pd.concat([df[df['SellCategory'] == 'Small-Seller'].groupby('InvoiceNo').sum(), df[df['SellCategory'] == 'Small-Seller'].groupby('InvoiceNo').sum()], 1)
df1.columns = ['Revenue_Small_Seller', 'Revenue_without_Small_Seller']https://stackoverflow.com/questions/55608889
复制相似问题