我正在尝试创建一列以返回bin值(五分位数),但我希望它以降序格式(即5,4,3,2,1)返回数字
我当前的公式是:
df['test'] = pd.qcut(df['ColumnA'], q=5, labels= False) + 1
我试图在DESC和ASC中订购数据,但结果仍然相同。
ColumnA test
2 1
2 1
3 2
3 2
4 3
4 3
5 4
5 4
6 5
6 5
我希望测试以降序格式返回箱号。
预期输出应为:
ColumnA test
2 5
2 5
3 4
3 4
4 3
4 3
5 3
5 3
6 1
6 1
答案 0 :(得分:2)
扩展@ayhan评论,请执行以下操作:
df['test'] = 5 - pd.qcut(df['ColumnA'], q=5, labels= False)
print(df)
输出
ColumnA test
0 2 5
1 2 5
2 3 4
3 3 4
4 4 3
5 4 3
6 5 2
7 5 2
8 6 1
9 6 1