У меня есть задача сравнить два кадра данных с одинаковым именем столбца, но разным размером, мы можем назвать его предыдущий и текущий. Я пытаюсь получить разницу между (предыдущим и текущим) в столбцах «Количество» и «Забронированные» и выделить их желтым цветом. Общим ключом между этими двумя кадрами данных будут столбцы 'SN'
Я кодировал следующее
for idx, rows in df_n.iterrows():
if rows["Quantity"] == rows['Available'] + rows['Booked']:
continue
else:
rows["Quantity"] = rows["Quantity"] - rows['Available'] - rows['Booked']
df_n.loc[idx, 'Quantity'].style.applymap('background-color: yellow')
# pdb.set_trace()
if (df_o['Booked'][df_o['SN'] == rows["SN"]] != rows['Booked']).bool():
df_n.loc[idx, 'Booked'].style.apply('background-color: yellow')
Я понимаю, что у меня есть несколько проблем здесь и мне нужна помощь
- df_n.loc [idx, «Количество»] возвращает значение вместо типа фрейма данных. Как я могу получить данные из одной ячейки. Должен ли я pd.DataFrame (data = df_n.loc [idx, «Количество»], индекс = idx, столбцы = «Количество»). Создаст ли это копию или обновит ссылку?
- Как сравнить SN обоих фреймов данных, чтобы найти лучший способ сравнения. Одна вещь, о которой я могу подумать, - это использовать заданный индекс для обоих фреймов данных, а когда закончить их использовать, сбросить их обратно?
Мой фрейм данных:
Предыдущий фрейм данных
Текущий кадр данных ![df_n new dataframe](https://i.stack.imgur.com/WOSdT.png)