Мой DataFrame выглядит так:
a b c d e f g
0 x y 1 3 4 5 6
1 x y -1 7 8 5 6
2 x y -1 7 8 3 4
Для строк, где df.c == -1
Я бы хотел отсортировать все столбцы между df.d
и df.g
в порядке возрастания.
Результат будет:
a b c d e f g
0 x y 1 3 4 5 6
1 x y -1 5 6 7 8
2 x y -1 3 4 7 8
Я пробовал несколько вещей, но ни одна из них не работала:
for row in df.itertuples():
if row.c == -1:
subset = row[4:]
sorted = sorted(subset)
df.replace(to_replace=subset, value= sorted)
, а также
df.loc[df.c == -1, df[4:]] = sorted(df[4:])