Python 无法使用合并数据帧中的密钥

Python 无法使用合并数据帧中的密钥,python,pandas,dataframe,Python,Pandas,Dataframe,我有两个数据帧,都有一个日期列和一个emaX列,当我合并它们时,我得到了一个日期列和两个emaX列的预期结果。但是,当我尝试从合并的数据帧访问日期键时,它返回一个KeyError:date 这是返回emaX的函数(我有两个,但它们几乎相同): 然后合并两个返回的数据帧: mergedDF = pd.merge(av_get_ema_10(), av_get_ema_20(), on=["date"], how="inner") # TEST LINE print(mergedDF) 打印出来的

我有两个数据帧,都有一个日期列和一个emaX列,当我合并它们时,我得到了一个日期列和两个emaX列的预期结果。但是,当我尝试从合并的数据帧访问日期键时,它返回一个KeyError:date

这是返回emaX的函数(我有两个,但它们几乎相同):

然后合并两个返回的数据帧:

mergedDF = pd.merge(av_get_ema_10(), av_get_ema_20(), on=["date"], how="inner")
# TEST LINE
print(mergedDF)
打印出来的数据框显示为我预期的样子:

                         ema10      ema20
date                                     
2020-01-02 11:30:00  3226.5200        NaN
2020-01-02 12:30:00  3229.0927        NaN
2020-01-02 13:30:00  3232.0558        NaN
2020-01-02 14:30:00  3235.0839        NaN
2020-01-02 15:30:00  3239.1668        NaN
...                        ...        ...
2020-03-26 11:30:00  2524.9545  2473.8551
2020-03-26 12:30:00  2533.1755  2483.0279
2020-03-26 13:30:00  2541.2982  2492.0586
2020-03-26 14:30:00  2551.0458  2501.8540
2020-03-26 15:30:00  2565.2866  2513.9983
但是,当我尝试使用合并的数据帧时(例如,通过数据帧进行交互),我得到了KeyError:date:

for index, row in mergedDF.iterrows():
   print(row["date"], row["ema10"], row["ema20"])

我是否以某种方式误解了数据帧,或者在使用合并集(包括日期)之前,我应该做些什么?我在这里不知所措。

date
是您的索引,您可以将其解包到循环中的
Index
,因此
打印(索引,第[“ema10”]、第[“ema20”])
@ALollz就是这样,谢谢
date
是您的索引,您可以将其解压缩到循环中的
Index
,因此
print(索引,第[“ema10”]行,第[“ema20”]行)
@ALollz就是这样,谢谢!
for index, row in mergedDF.iterrows():
   print(row["date"], row["ema10"], row["ema20"])