Код: Выделить всё
import pandas as pd
df1 = pd.DataFrame([[1, 'a', 0.95], [2, 'b', 0.92], [3, 'c', 0.91]], columns=['id','value','similarity'])
df2 = pd.DataFrame([[3, 'c', 0.93], [4, 'd', 0.92], [5, 'e', 0.99]], columns=['id','value','similarity'])
Код: Выделить всё
df1
Код: Выделить всё
id name similarity
1 a 0.95
2 b 0.92
3 c 0.91
Код: Выделить всё
df2
Код: Выделить всё
id name similarity
3 c 0.93
4 d 0.92
5 e 0.99
Код: Выделить всё
df3 = df1.set_index('id').combine_first(df2.set_index('id'))
df3
id name similarity
1 a 0.95
2 b 0.92
3 c 0.91
4 d 0.92
5 e 0.99
Код: Выделить всё
id name similarity
1 a 0.95
2 b 0.92
3 c 0.92
Подробнее здесь: [url]https://stackoverflow.com/questions/78305981/pandas-merge-dataframe-keep-non-null-values-on-common-columns-keep-average-o[/url]