У меня есть два pd.Dataframes:
A = [ timestamp key
12-12-2012:00 AAAA
13-12-2012:00 AAAA
...]
и второй:
B = [ timestamp key
12-12-2015:00 AAAA
13-12-2012:00 BBBB
...]
Я хочу найти, есть ли для каждой строки в A
строка вB
(с тем же ключом), где дата указана в (B.timestamp - pd.timedelta(x), B.timestamp)
.В SQL
вы можете сделать left join
, используя:
ON (A.key = B.key) AND (A.timestamp >= B.timestamp - pd.timedelta(x)) AND (A.timestamp <= B.timestamp)
Есть ли способ получить тот же результат в pandas
?
pd.Мое решение до сих пор состоит в том, чтобы реплицировать / добавлять B данных кадра n раз для каждой даты до B.timestamp - pd.timedelta(x)
.Учитывая все A.timestamp
, а затем применить pd.merge
, но это должен быть более "питонический" способ получить результат