如何按列的值排序将列分为5组。
并按组添加列
例如
import pandas as pd
df = pd.DataFrame({'x1':[1,2,3,4,5,6,7,8,9,10]})
我希望添加这样的列:
答案 0 :(得分:1)
您可能希望查看pd.cut
,并将参数bins
设置为您想要的多个组的整数,并将labels
参数设置为False
(至返回组的整数指示符而不是范围):
df['add_col'] = pd.cut(df['x1'], bins=5, labels=False) + 1
>>> df
x1 add_col
0 1 1
1 2 1
2 3 2
3 4 2
4 5 3
5 6 3
6 7 4
7 8 4
8 9 5
9 10 5
请注意+ 1
只是在那里,因此您的论坛的编号为1
到5
,就像您想要的输出一样。如果您没有说+ 1
,则会将0
编号为4