如何根据 pandas 中的一组特定日期和 python 中的数据读取器获取一组价格
how can I get a set of prices based on a set of specific dates in pandas and datareader in python
我是 pandas 和 python 的初学者,我正在尝试分析股票数据。
我得到了我想要的股息数据和股息日期。现在我想倒退 10 天,看看那个日期的价格。我成功添加了新的列,但无法添加基于新列的价格
action value Date -10 Days price -10 days
2020-07-16 DIVIDEND 0.0900 2020-07-06 ###
2020-04-16 DIVIDEND 0.1870 2020-04-06 ###
2020-01-16 DIVIDEND 0.1870 2020-01-06 ###
import datetime
import pandas_datareader as pdr
from pandas_datareader import data
stc = data.DataReader('4339.SR', 'yahoo-actions')
price10 = pdr.get_data_yahoo('4339.SR')
end_date = stc.index + datetime.timedelta(days=-10)
stc['Date -10 Days'] = end_date
stc['price -10 days'] = '###'
stc
我应该怎么做才能插入 2020-07-06 和 2020-04-06 的新价格....等等
非常感谢
'df.merge'用于查找数据框与收盘价的左连接。
stc.merge(price10[['Close']], left_on='Date -10 Days', right_index=True, how='left')
action value Date -10 Days Close
2020-07-16 DIVIDEND 0.0900 2020-07-06 9.49
2020-04-16 DIVIDEND 0.1870 2020-04-06 10.00
2020-01-16 DIVIDEND 0.1870 2020-01-06 10.58
2019-10-14 DIVIDEND 0.1870 2019-10-04 NaN
2019-07-16 DIVIDEND 0.1870 2019-07-06 NaN
2019-04-16 DIVIDEND 0.1870 2019-04-06 NaN
2019-01-01 DIVIDEND 0.1870 2018-12-22 NaN
2018-12-30 DIVIDEND 0.1870 2018-12-20 8.20
2018-10-01 DIVIDEND 0.1810 2018-09-21 NaN
2018-09-27 DIVIDEND 0.1810 2018-09-17 8.02
2018-06-27 DIVIDEND 0.1810 2018-06-17 8.02
2018-03-28 DIVIDEND 0.1023 2018-03-18 NaN
我是 pandas 和 python 的初学者,我正在尝试分析股票数据。 我得到了我想要的股息数据和股息日期。现在我想倒退 10 天,看看那个日期的价格。我成功添加了新的列,但无法添加基于新列的价格
action value Date -10 Days price -10 days
2020-07-16 DIVIDEND 0.0900 2020-07-06 ###
2020-04-16 DIVIDEND 0.1870 2020-04-06 ###
2020-01-16 DIVIDEND 0.1870 2020-01-06 ###
import datetime
import pandas_datareader as pdr
from pandas_datareader import data
stc = data.DataReader('4339.SR', 'yahoo-actions')
price10 = pdr.get_data_yahoo('4339.SR')
end_date = stc.index + datetime.timedelta(days=-10)
stc['Date -10 Days'] = end_date
stc['price -10 days'] = '###'
stc
我应该怎么做才能插入 2020-07-06 和 2020-04-06 的新价格....等等
非常感谢
'df.merge'用于查找数据框与收盘价的左连接。
stc.merge(price10[['Close']], left_on='Date -10 Days', right_index=True, how='left')
action value Date -10 Days Close
2020-07-16 DIVIDEND 0.0900 2020-07-06 9.49
2020-04-16 DIVIDEND 0.1870 2020-04-06 10.00
2020-01-16 DIVIDEND 0.1870 2020-01-06 10.58
2019-10-14 DIVIDEND 0.1870 2019-10-04 NaN
2019-07-16 DIVIDEND 0.1870 2019-07-06 NaN
2019-04-16 DIVIDEND 0.1870 2019-04-06 NaN
2019-01-01 DIVIDEND 0.1870 2018-12-22 NaN
2018-12-30 DIVIDEND 0.1870 2018-12-20 8.20
2018-10-01 DIVIDEND 0.1810 2018-09-21 NaN
2018-09-27 DIVIDEND 0.1810 2018-09-17 8.02
2018-06-27 DIVIDEND 0.1810 2018-06-17 8.02
2018-03-28 DIVIDEND 0.1023 2018-03-18 NaN