[英]How to filter for dates range in timeseries or dataframe using python
仍然是 Python 的新手,只是想学习这些东西。 感谢任何帮助。
现在,当我连接到 Alpha Vantage 时,我会获得所有日期的全部数据,看起来像这样
这是目前代码的样子
import pandas as pd
from pandas import DataFrame
import datetime
from datetime import datetime as dt
from alpha_vantage.timeseries import TimeSeries
import numpy as np
stock_ticker = 'SPY'
api_key = open('/content/drive/My Drive/Colab Notebooks/key').read()
ts = TimeSeries (key=api_key, output_format = "pandas")
data_daily, meta_data = ts.get_daily_adjusted(symbol=stock_ticker, outputsize ='full')
#data_date_changed = data[:'2019-11-29']
data = pd.DataFrame(data_daily)
df.loc[datetime.date(year=2014,month=1,day=1):datetime.date(year=2015,month=2,day=1)]
import datetime
df.loc[datetime.date(year=2014,month=1,day=1):datetime.date(year=2014,month=2,day=1)]
根据我的经验,您不能在loc
内部传递一个简单的字符串,而必须是一个日期时间对象。
答案是
stock_ticker = 'SPY'
api_key = 'apikeyddddd'
ts = TimeSeries (key=api_key, output_format = "pandas")
data_daily, meta_data = ts.get_daily_adjusted(symbol=stock_ticker, outputsize ='full')
test = data_daily[(data_daily.index > '2014-01-01') & (data_daily.index <= '2017-08-15')]
print(data_daily)
print(test)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.