Python 从pandas中的其他数据帧联接列

Python 从pandas中的其他数据帧联接列,python,pandas,Python,Pandas,我有两个数据帧: d1列:['Text'、'Date'、'Date'u with_affect']-Id作为索引: 89“你好”,2018-03-052018-03-06 d2列:[“价格”、“开盘价”、“高位”、“低位”、“成交量”、“变动”]-日期设置为 索引 2018-03-06,12,13,14,11,0,0.5 我想在d1数据框中添加一个新的列,该列将是d2的“更改”列,其日期与d2的日期相匹配。 因此,结果将是: 89“你好”,2018-03-052018-03-060.5 如果日期

我有两个数据帧: d1列:['Text'、'Date'、'Date'u with_affect']-Id作为索引:

89“你好”,2018-03-052018-03-06

d2列:[“价格”、“开盘价”、“高位”、“低位”、“成交量”、“变动”]-日期设置为 索引

2018-03-06,12,13,14,11,0,0.5

我想在d1数据框中添加一个新的列,该列将是d2的“更改”列,其日期与d2的日期相匹配。 因此,结果将是:

89“你好”,2018-03-052018-03-060.5

如果日期不在d2中,则应选择第二天。 最简单的方法是什么? 我试着这么做,但我想这完全是错误的

d1["Change"] = d2[d1["Date_with_affect"]].Change

对于这种情况,我认为您也可以使用,我假设您的日期是datetime格式。如果没有,请尝试使用pd.to_datetime将其转换为:


对于这种情况,我认为您也可以使用,我假设您的日期是datetime格式。如果没有,请尝试使用pd.to_datetime将其转换为:


你能粘贴d1.head和d2.head的输出来说明两个数据框中包含的数据吗?你能粘贴d1.head和d2.head的输出来说明两个数据框中包含的数据吗datatimes@AlaGłowacka在之前使用sort_值合并所有关于美学的内容。我得到错误:ValueError:必须对左键进行排序。两个日期都是datatimes@AlaGłowacka在合并前使用sort_值
pd.merge_asof(
   d1,
   d2.reset_index()[['Date','Change']],
   left_on='Date_with_affect',
   right_on='Date'
)