У меня есть две панды DataFrames, и я хочу обновить одну с другой ...
Но я не могу быть уверен, что индексы совпадают. (поэтому проблема заключается в использовании DataFrame.update !)
exmaple:
import pandas as pd
df1 = pd.DataFrame([('path1', 0, 0, 0),
('path2', 0, 0, 0),
('path3', 0, 0, 0),
('path4', 0, 0, 0),],
columns=['path', 'class', 'manual', 'conf'],
index = [1,2,3,4])
df2 = pd.DataFrame([('path1', 1, 0, 0),
('path2', 0, 1, 0),
('path3', 0, 0, 1),
('path5', 1, 1, 0),
('path6', 1, 1, 0),],
columns=['path', 'class', 'manual', 'conf'],
index = [10,11,12,13,14])
Желаемый результат:
update_annotations(df1, df2)
path class manual conf
1 path1 1 0 0
2 path2 0 1 0
3 path3 0 0 1
4 path4 0 0 0
df1.update (df2) может быть опасным, так как индексы этих фреймов данных могут не совпадать. Какой самый безопасный и эффективный способ сделать это?