Код: Выделить всё
import pandas as pd
id = [1001, 1002, 1003]
a = [156, 224, 67]
b = [131, 203, 61]
c = [97, 165, 54]
d = [68, 122, 50]
value = [71, 180, 66]
df = pd.DataFrame({'id':id, 'a':a, 'b':b, 'c':c, 'd':d, 'value':value})
id
a
b
c
d
значение
1001
156
131
97
68
71
1002
224
203
165
122
180
1003
67
61
54
50
66
Для каждой строки я хотел бы оценить столбцы a-d и внутри них определить следующий самый низкий и следующий самые высокие значения по сравнению с значением. Итак, в этом примере ожидаемый результат будет выглядеть так:
id
a
b
c
d
value
nxt_low
nxt_high
1001
156
131
97
68
71
68
97
1002
224
203
165
122
180
165
203
1003
67
61
54
50
66
61
67
Я пытался создать один столбец с массивом numpy из a-d и пытался выполнить некоторые операции таким образом, но я не применяю его правильно и не смог получить желаемый результат. Любая помощь очень ценится.