Python 如何相互追加/合并股票价格
我有一个通过csv导入的ticker列表,然后导入到这样的数组中Python 如何相互追加/合并股票价格,python,pandas,stocks,Python,Pandas,Stocks,我有一个通过csv导入的ticker列表,然后导入到这样的数组中 tickers = ['SPY', 'AAPL',] for ticker in tickers: start = datetime.datetime(2017, 1, 1) end = datetime.datetime(2018, 10, 3) ticker1 = data.DataReader(ticker,'iex', start, end) stocks_prices = pd.con
tickers = ['SPY', 'AAPL',]
for ticker in tickers:
start = datetime.datetime(2017, 1, 1)
end = datetime.datetime(2018, 10, 3)
ticker1 = data.DataReader(ticker,'iex', start, end)
stocks_prices = pd.concat([ticker1],axis=1,keys=tickers)
我的concat代码不起作用。它只显示间谍的价格。有人能告诉我如何为AAPL获得它吗?我有一张大约200只股票的清单,想把它们合并在一起吗
谢谢
输出
您可能希望尝试从ticker1(表示“SPY”)和ticker2(表示“AAPL”)创建帧。例如,
frames=[ticker1,ticker2]
,然后stock\u prices=pd.concat(frames)
是的,但这里我只有2只股票,而它有200只股票。我必须手动将ticker1写入ticker200。对吧?就像哈克斯塔说的汉克斯兄弟。理解。我会试试看。
import datetime
import pandas_datareader.data as web
import pandas as pd
tickers = ['SPY', 'NVTR',]
frames=[]
for ticker in tickers:
start = datetime.datetime(2018, 10, 1)
end = datetime.datetime(2018, 10, 3)
ticker1 = web.DataReader(ticker,'iex', start, end)
frames.append(ticker1)
stocks_prices = pd.concat(frames,keys=tickers)
print(stocks_prices)
open high low close volume
date
SPY 2018-10-01 292.11 292.930 290.98 291.73 62078937
2018-10-02 291.56 292.355 291.14 291.56 47258227
2018-10-03 292.74 293.210 291.32 291.72 64694594
NVTR 2018-10-01 22.01 24.890 21.89 24.10 492424
2018-10-02 24.39 24.790 23.50 23.68 336636
2018-10-03 23.68 24.280 22.76 23.97 400894