Используя панд, я прочитал запрос из sql, используя что-то вроде этого:
df = pd.read_sql(query, engine)
Этот фрейм данных довольно большой, и я обновил один столбец с именем 'weight', выполнив некоторые вычисления.
Я хочу обновить этот столбец моим новым столбцом в DataFrame.
Как я могу сделать это, чтобы обновление столбца соответствовало правильным строкам?
Например, скажем, у меня есть пример df, например: df =
type color size weight
10 green 12 13
23 green 40 10
16 red 40 15
где df ['weight'] - мой недавно вычисленный столбец, который я хочу обновить в db.
В данный момент БД выглядит так: Таблица =
type color size weight
10 green 12 null
23 green 40 null
16 red 40 null
Моя ожидаемая обновленная таблица sql:
type color size weight
10 green 12 13
23 green 40 10
16 red 40 15
Я использую psychopg2 и ниже мой мыслительный процесс для кода:
UPDATE table
SET weight = df.weight
WHERE table.type = df.type
AND table.size = df.size
AND table.color = df.color
Как лучше написать код обновления на Python для обновления базы данных?