Я хочу использовать pd.cut
(для преобразования непрерывных переменных в дискретные) в некоторые переменные моего фрейма данных pandas, но я хочу, чтобы это сокращение зависело от другого столбца.Представьте, что я хочу 3 ячейки.
Например:
+------+------+------+--------+
| col1 | col2 | col3 | sector |
+------+------+------+--------+
| 4.5 | 6 | 7 | a |
+------+------+------+--------+
| 8 | 9 | 17 | a |
+------+------+------+--------+
| 0 | 9 | 8 | b |
+------+------+------+--------+
| 8 | 9 | 0 | b |
+------+------+------+--------+
| 1 | 2 | 3.5 | b |
+------+------+------+--------+
Я хочу разрезать только col1
и col2
на 3 ячейки на основе sector
, так что для каждогосектор порез выполняется.Это очень полезно для сравнения переменных из разных источников.
Результат будет (он составлен, не ожидайте, что он будет точным на 100%):
+----------+----------+------+--------+
| col1_cut | col2_cut | col3 | sector |
+----------+----------+------+--------+
| 2 | 2 | 7 | a |
+----------+----------+------+--------+
| 3 | 3 | 17 | a |
+----------+----------+------+--------+
| 1 | 3 | 8 | b |
+----------+----------+------+--------+
| 3 | 3 | 0 | b |
+----------+----------+------+--------+
| 1 | 1 | 3.5 | b |
+----------+----------+------+--------+
PS: я сделал это Q & A, потому что у меня была эта проблема и я не мог найти решение самостоятельно.Не стесняйтесь ответить на собственное решение или улучшить мое, я ценю обратную связь.