我想创建一个数据框,该数据框结合了从雅虎财经下载的各种ETF(XLF,XLP,XLU等)的历史价格数据。我尝试为每个ETF创建一个数据框,其中包含日期和调整后的收盘价。现在,我想将它们全部合并为一个数据帧。知道为什么这行不通吗?
我尝试将每个csv保存为数据框,该数据框仅具有日期并已调整为关闭。然后,我想结合使用日期作为索引。
# Here's what I've tried.
import os
import pandas as pd
from functools import reduce
XLF_df = pd.read_csv("datasets/XLF.csv").set_index("Date")["Adj Close"]
XRT_df = pd.read_csv("datasets/XRT.csv").set_index("Date")["Adj Close"]
XLP_df = pd.read_csv("datasets/XLP.csv").set_index("Date")["Adj Close"]
XLY_df = pd.read_csv("datasets/XLY.csv").set_index("Date")["Adj Close"]
XLV_df = pd.read_csv("datasets/XLV.csv").set_index("Date")["Adj Close"]
dfList = [XLF_df, XRT_df, XLP_df, XLY_df, XLV_df]
df = reduce(lambda df1,df2: pd.merge(df1,df2,on="Date"), dfList)
df.head()
我得到一个空的数据框!而且,如果我说on =“ id”,那么我会得到一个关键错误。