如何按运行范围添加组列

raogr8fs  于 2021-07-14  发布在  Java
关注(0)|答案(1)|浏览(331)

我有一个Dataframe:

A      B 
0     0.1
0.1   0.3
0.35  0.48
1.3   1.5
1.5   1.9
2.2   2.9
3.1   3.4
5.1   5.5

我想添加一个列,在分组到1.5的bins之后,它的等级是b,所以它是

A      B     T
0     0.1    0
0.1   0.3    0
0.35  0.48   0
1.3   1.5    0
1.5   1.9    1
2.2   2.9    1
3.1   3.4    2
5.1   5.5    3

最好的方法是什么?

kq4fsx7k

kq4fsx7k1#

使用 cutSeries.factorize :

df['T'] = pd.factorize(pd.cut(df.B, bins=np.arange(0, df.B.max() + 1.5, 1.5)))[0]
print (df)
      A     B  T
0  0.00  0.10  0
1  0.10  0.30  0
2  0.35  0.48  0
3  1.30  1.50  0
4  1.50  1.90  1
5  2.20  2.90  1
6  3.10  3.40  2
7  5.10  5.50  3

相关问题