Дискретизация столбца Pandas на основе пользовательских диапазонов
Есть ли способ дискретизировать столбец из кадра данных Pandas на основе пользовательских пределов (то есть диапазоны не имеют одинаковую длину)? Предыдущие вопросы, заданные здесь, не охватывают этот случай.
Например, предположим, что мы хотим преобразовать числовые оценки (из 4) в ячейки следующим образом:
3,75 до 4: отлично
3,5 до 3,75: очень хорошо
3,25 до 3,5: хорошо
3 до 3,25: средний
2,5 до 3: плохо
Ниже 2,5: очень плохо
Я знаю, что это можно сделать с помощью серии if
с и else
s, но я искал более чистый и более гибкий (для большего количества бункеров) способ сделать это.
1 ответ
Вы можете использовать cut
pd.cut(df['Yourcolumns'],bins=[0,2.5,3,3.25,3.5,3.75,4], labels=["Very bad","Bad", "Average", "good","Very good","Excellent"])