df=yf.download("^NSEI", start="2020-11-30", end="2022-02-27",interval="1wk")
我正在尝试使用Yfinance&大熊猫,效果很好。但每周的范围是周一到周一我要从星期五到星期五。
有可能吗?任何帮助都将不胜感激!谢谢
AFAIK,您不能更改yfinance
设置以获得每周数据,该数据的范围为周五至周五。但是,您可以下载每日数据并手动重新采样以满足您的需求。
如果你只对调整后的收盘价感兴趣,你可以使用Pandas的resample
函数。
df=yf.download("^NSEI", start="2020-11-30", end="2022-02-27")
df_daily_close = df.loc[:, "Adj Close"]
df_weekly_close = df_daily_close.resample("W-FRI").last()
如果要对OHLCV价格重新采样,可以将aggregate
函数与resample
函数一起使用。聚合函数允许您将不同的函数应用于数据帧中的不同列。
# Remove the `Close` column as we are using `Adj Close`
df_daily_ohlcv = df.drop("Close", axis=1)
# Define a dictionary with the functions to apply to each column
functions = {"Open": "first", "High": "max", "Low": "min", "Adj Close": "last", "Volume": "sum"}
# Resample
df_weekly_ohlcv = df.resample('W-FRI').aggregate(functions)