我需要编写高效的代码,使我的输出(即数据帧)与下面的代码相同。我在考虑使用for循环
开始日期='2019-01-01'
结束日期='2019-06-30'
stock1=pdr.DataReader('MSFT','yahoo',开始日期,结束日期)[['Adj Close']]
stock1.columns=['MSFT']
stock2=pdr.DataReader('HD','yahoo',开始日期,结束日期)[['Adj Close']]
stock2.columns=['HD']
stock3=pdr.DataReader('AMZN','yahoo',开始日期,结束日期)[['Adj Close']]
stock3.columns=['AMZN']
stock4=pdr.DataReader('GOOGL','yahoo',开始日期,结束日期)[['Adj Close']]
stock4.columns=['GOOGL']
stock5=pdr.DataReader('COST','yahoo',开始日期,结束日期)[['Adj Close']]
stock5.列=['COST']
组合=股票1.加入([stock2,stock3,stock4,stock5],how='outer')
投资组合.总目()
这就是我迄今为止所尝试的:
开始日期='2019-01-01'
结束日期='2019-06-30'
对于['MSFT'、'HD'、'AMZN'、'GOOGL'、'COST']中的x:
stock=pdr.DataReader(x, 'yahoo', start_date, end_date)[['Adj Close']]
stock.columns=[x]
portfolio=stock.join(stock,how='outer')
投资组合.总目()
然而,我得到了这个错误:
ValueError:列重叠但未指定后缀:索引(['MSFT'],dtype='object')
有什么想法吗
目前没有回答
相关问题 更多 >
编程相关推荐