Как объединить два кадра данных на основе определенного столбца в pandas python?

Я должен объединить два кадра данных:

df1

company,standard
tata,A1
cts,A2
dell,A3

df2

company,return
tata,71
dell,78
cts,27
hcl,23

Я должен объединить оба кадра данных в один кадр данных. Мне нужен вывод, как:

company,standard,return
tata,A1,71
cts,A2,27
dell,A3,78

Ответ 1

Используйте merge:

print (pd.merge(df1, df2, on='company'))

Пример:

print (df1)
  company standard
0    tata       A1
1     cts       A2
2    dell       A3

print (df2)
  company  return
0    tata      71
1    dell      78
2     cts      27
3     hcl      23

print (pd.merge(df1, df2, on='company'))
  company standard  return
0    tata       A1      71
1     cts       A2      27
2    dell       A3      78

Ответ 2

Чтобы успешно объединить два фрейма данных на основе общих столбцов, dtype для общего столбца (-ов) в обоих фреймах данных должен быть одинаковым! dtype для столбца можно изменить:

df['commonCol'] = df['commonCol'].astype(int)