Python 如何使用不同的计算创建数据帧交叉选项卡/汇总表/透视图

Python 如何使用不同的计算创建数据帧交叉选项卡/汇总表/透视图,python,pandas,Python,Pandas,大家好,我有一个如下所示的数据框: print(df): TrxID Price Profit Online Satisfaction ### 10 10 Yes 25% ### 15 20 No 75% ### 18 -10 Yes

大家好,我有一个如下所示的数据框:

print(df):
TrxID       Price       Profit        Online      Satisfaction
###          10           10           Yes         25%
###          15           20           No          75%
###          18           -10           Yes         55%
###          10           30           No          70%
###          20           -50           Yes         79%
###          30           15           No          90%
###          30           15           No          15%
我希望创建以下摘要/交叉表/数据透视表:

SatisfactionBins     SalesMade   AveSalePrice   CountofOnline    Profit      Profit/SalesMade     

20%                     1             30              0             15            1500%
40%                     1             10              1             10            1000%
60%                     1             18              1             -10           -1000%
80%                     3             15              1             0              0%
100%                    1             30              0             15            1500%
这样做对吗

df['Profit/SalesMade'] = df['Profit'] / df['SalesMade']
probbins = [0,0.2,0.4,0.6,0.8,1]
df['SatisfactionBins'] = pd.cut(dfclubhouse['Satisfaction'],bins=probbins)
df.groupby('SatisfactionBins')[(df['SalesMade'].count()),(df['Price'].mean()), etc etc]
我希望有人能在如何编写这段代码的“最佳实践”方面提供帮助,但我不确定接下来该怎么做。任何帮助都会很好!谢谢

您的pd.cut解决方案是正确的,只需更改groupby即可


谢谢@YOBEN_S。我让他们为count、mean和sum工作,但是关于如何在线获取count=='Yes'作为一列,以及如何将百分比计算df['Profit/SalesMaked']=df['Profit']/df['SalesMaked']作为一个新列,有什么想法吗?
df.groupby('SatisfactionBins').agg({'SalesMade':'count','Price':'mean'})