Python 无法使用合并数据帧中的密钥
我有两个数据帧,都有一个日期列和一个emaX列,当我合并它们时,我得到了一个日期列和两个emaX列的预期结果。但是,当我尝试从合并的数据帧访问日期键时,它返回一个KeyError:date 这是返回emaX的函数(我有两个,但它们几乎相同): 然后合并两个返回的数据帧: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) 打印出来的
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"])