【发布时间】:2020-05-02 09:10:09
【问题描述】:
我有一个格式为:
Name Score Bin
John 90 80-100
Marc 30 20-40
John 10 0-20
David 20 0-20
...
我想创建一个如下所示的数据透视表:
Name 0-20 20-40 40-60 60-80 80-100 Total count Avg score
John 1 2 nan nan 2 5 60.53
Marc nan 2 nan nan nan 2 32.13
David 3 2 nan nan nan 5 21.80
所以我想要有显示每个桶的值计数的列,以及值的总计数和平均分数。
我试过了
table = pd.pivot_table(df, values=['Score', "Bin"], index=["nAME"],
aggfunc={"Score" : np.average, "Bin" : "count"},
dropna=True, margins = True)
但是我只是得到总体计数,而不是按桶细分
【问题讨论】:
-
df.groupby('Name')['Bin'].value_counts().unstack('Bin')
标签: pandas pivot pivot-table