Возможно, на этот вопрос уже есть ответ, но мне не удалось его найти.
Я хочу получить элементы из второго фрейма данных, которые будут добавлены в новый столбец в первом фрейме данных, если есть совпадение между обоими фреймами данных
Здесь я показываю некоторые примерные данные, очень похожие на случай, с которым я сталкиваюсь.
import pandas as pd
import numpy as np
a = np.arange(3).repeat(3)
b = np.tile(np.arange(3),3)
df1 = pd.DataFrame({'a':a, 'b':b})
a b
0 0 0
1 0 1
2 0 2
3 1 0
4 1 1
5 1 2
6 2 0
7 2 1
8 2 2
a2 = np.arange(1, 4).repeat(3)
b2 = np.tile(np.arange(3),3)
c = np.random.randint(0, 10, size=a2.size)
df2 = pd.DataFrame({'a2':a2, 'b2':b2, 'c':c})
a2 b2 c
0 1 0 3
1 1 1 1
2 1 2 9
3 2 0 5
4 2 1 8
5 2 2 4
6 3 0 1
7 3 1 6
8 3 2 1
Желаемый результат должен быть похож на
a b c
0 0 0 nan
1 0 1 nan
2 0 2 nan
3 1 0 3
4 1 1 1
5 1 2 9
6 2 0 5
7 2 1 8
8 2 2 4
К сожалению, я все равно не смог придумать, как ее решить.