根据Python中的列值范围添加类别

根据Python中的列值范围添加类别,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个数据框: df = id mu 1 -5 2 -3 3 0 4 3 5 25 如何根据列“mu”的特定值范围设置另一列“rating”: 如果-1>=mu=mu=mu=mu=mu 5,我用pd.cut找到了解决方案 更改为绝对值 df['abs_mu'] = df.mu.abs() df= id mu abs_mu 0 1 -5 5

我有一个数据框:

 df =
        id mu 
        1 -5
        2 -3
        3 0
        4 3
        5 25
如何根据列“mu”的特定值范围设置另一列“rating”:


如果-1>=mu=mu=mu=mu=mu 5,我用pd.cut找到了解决方案

更改为绝对值

 df['abs_mu'] = df.mu.abs()

df=

      id  mu  abs_mu
    0   1  -5       5
    1   2  -3       3
    2   3   0       0
    3   4   2       2
    4   5  25      25
然后是pd切

pd.cut(df.abs_mu,[0, 1, 2, 3, 4, 5, np.inf],labels=['A','B', 'C', 'D', 'E', 'F'], include_lowest=True)
收益率:

0    E
1    C
2    A
3    B
4    F
Name: abs_mu, dtype: category
Categories (6, object): [A < B < C < D < E < F]
对不起,我觉得自己很愚蠢。 谢谢你抽出时间

检查pd.cut。它正好满足你的需要。2放在哪里,因为它同时满足A和B的条件