繁体   English   中英

Python-pd.DataFrame返回NaN值

[英]Python - pd.DataFrame returning NaN values

我正在尝试从Morningstar获取三个股票行情的价格并将其放入数据框,但是pd.DataFrame一直给我提供NaN值。

all_data = {}

for ticker in ['AAL', 'ALK','WTI']:
     all_data[ticker] = data.DataReader(ticker, 'morningstar', '2014-06-01','2016-06-13')

在此处输入图片说明

price = pd.DataFrame({ticker: data['Close'] for ticker, data in all_data.items()})
print(price.head(5))

在此处输入图片说明

理想情况下,我希望pd.DataFrame返回一个四列的数据框(日期,股票行情1的收盘价,股票行情2的收盘价和股票行情3的收盘价),但它一直返回第二个和第三个股票行情的NaN值。

我想知道如何修复代码以获得预期的结果?

非常感谢你!

我认为dict的值是dataframe,基于您的图像,因此当您执行data['Close'] ,它将保留其索引,不同的索引concat将为错过匹配返回NaN

all_data = {}

for ticker in ['AAL', 'ALK','WTI']:
     all_data[ticker] = data.DataReader(ticker, 'morningstar', '2014-06-01','2016-06-13')

price = pd.DataFrame({ticker: data['Close'].values for ticker, data in all_data.items()})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM