假设您的目标是春季月份(可能是 1 月 1 日到 4 月 30 日,可能会发生变化),您可以创建一个list
日期tuples
,其中每个日期都tuple
包含给定的start
和end
日期year
。例如, 的第一个元素list
是(datetime.datetime(2000, 1, 1, 0, 0), datetime.datetime(2000, 4, 30, 0, 0))
. 这将是 2000 年 1 月 1 日至 4 月 30 日。
一旦你有了你list
的日期tuples
,你就可以遍历它们并为每个日期组合获取start
数据end
。结果也将是 a list
,但这次将是list
DataFrames 的pandas
a,您可以很容易地将它们连接在一起以获得所需的数据集。以下应作为工作脚本:
import pandas_datareader.data as web
import datetime
import pandas as pd
all_dates = [(datetime.datetime(year, 1, 1), datetime.datetime(year, 4, 30)) for year in range(2000, 2011)]
f = pd.concat([web.DataReader("F", 'yahoo', start, end) for start, end in all_dates], axis=1)
print(f.tail())
# Close Volume Adj Close
# Date
# 2010-04-26 14.46 123029200.0 11.684445
# 2010-04-27 13.57 292667400.0 10.965278
# 2010-04-28 13.25 208023500.0 10.706701
# 2010-04-29 13.58 110114400.0 10.973358
# 2010-04-30 13.02 146322900.0 10.520849
我希望这有帮助。