【发布时间】:2020-08-18 00:21:01
【问题描述】:
你好 stackoverflow 社区。我在尝试在共享相同日期列的两个数据框之间进行简单合并时遇到问题。抱歉,我是 python 新手,也许我表达自己的方式不是很清楚。我正在从事与股票价格计算相关的项目。第一个数据框有日期和收盘价列,而第二个数据框只有类似的日期列。我的目标是获得一个日期列,其旁边将有匹配的收盘价列。
这是我为合并两个数据框所做的工作
inner_join = pd.merge(df.iloc[7:79],df1[['Ex-Date','FDX UN Equity']],on ='Ex-date',how ='inner')
inner_join
Ex-date 指的是日期栏,FXD UN Equity 指的是收盘价栏
我得到了这个结果:
) = self._get_merge_keys()
# validate the merge keys dtypes. We may need to coerce
# Check for duplicates
# work-around for merge_asof(right_index=True)
KeyError: 'Ex-date'```
Pandas 读取日期列的格式不同,所以我为原始 excel 文件中的日期列设置了相同的格式,但没有帮助。我尝试了各种合并,但也没有用。 有人知道发生了什么吗?
【问题讨论】:
-
你能显示 df.head()。光看这个就很难判断是怎么回事
-
按标签选择列区分大小写。您选择
df1[['Ex-Date',...]],然后尝试在'Ex-date'上合并,注意日期中D的大小写不同