how to merge two dataframes and sum the values of columns
I think need set_index
for both DataFrame
s, add
and last reset_index
:
df = df1.set_index('Name').add(df2.set_index('Name'), fill_value=0).reset_index()print (df) Name class value0 Ram 2.0 8.01 Sri 2.0 10.02 viv 7.0 8.0
If values in Name
are not unique use groupby
and aggregate sum
:
df = df1.groupby('Name').sum().add(df2.groupby('Name').sum(), fill_value=0).reset_index()