Python — условное преобразование данных на основе приоритетовPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Python — условное преобразование данных на основе приоритетов

Сообщение Anonymous »

У меня есть вариант использования формы с тремя раскрывающимися списками (в данном примере A, B и C). У каждого из них есть 4 варианта:
Изображение

Это дает мне данные для каждой записи/идентификатора следующим образом:
data = {
'ID': [1, 2, 3, 4],
'A_OLD': ['A1', 'A4', 'A3', 'A4'],
'A_NEW': [np.nan, np.nan, np.nan, np.nan],
'Priority_A_NEW': [np.nan, np.nan, np.nan, np.nan],
'B_OLD': ['B2', 'B1', 'B1', 'B2'],
'B_NEW': [np.nan, np.nan, np.nan, np.nan],
'Priority_B_NEW': [np.nan, np.nan, np.nan, np.nan],
'C_OLD': ['C4', 'C3', 'C1', 'C2'],
'C_NEW': [np.nan, np.nan, np.nan, np.nan],
'Priority_C_NEW': [np.nan, np.nan, np.nan, np.nan],
}
df = pd.DataFrame(data)

Изображение

Я хочу изменить название опций. Мне нужно изменить все старые данные на новые значения. Сложность возникает из-за следующего:
  • Некоторые значения не только изменят значение одного значения раскрывающегося списка, но также не изменят значение другого раскрывающегося списка.
  • Это может привести к конфликтам между двумя (или более) новыми значениями.
  • Чтобы разрешить большинство конфликтов, я добавил приоритеты
Изображение

Если я применю преобразование с учетом приоритетов, я хочу, чтобы мой результат был таким:
ID A_OLD B_OLD C_OLD A_NEW B_NEW C_NEW
1 A1 B2 C4 A-1 B-2 C-4
2 A4 B1 C3 A-1< B-1 C-3
3 A3 B1 C1 A-3< B-1 C-1
4 A4 B2 C2 A-4 B-1, B-2< C-2

Значок '

Подробнее здесь: https://stackoverflow.com/questions/790 ... sformation
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»