我有一个嵌套字典。它是一些纳斯达克类型的数据。就像这样:
{'CLSN':
Date Open High Low Close Volume Adj Close
2015-12-31 1.92 1.99 1.87 1.92 79600 1.92
2016-01-04 1.93 1.99 1.87 1.93 39700 1.93
2016-01-05 1.89 1.94 1.85 1.90 50200 1.90,
'CCC':
Date Open High Low Close Volume Adj Close
2015-12-31 17.270000 17.389999 17.120001 17.250000 177200 16.965361
2016-01-04 17.000000 17.219999 16.600000 17.180000 371600 16.896516
2016-01-05 17.190001 17.530001 17.059999 17.450001 417500 17.162061,
}
为了帮助您理解,这是“键”后跟着“值”,“值”是一个“dataframe(数据框架)”!在提问之前,我尝试了“pd.Panel(nas)['CLSN']”这种方式,所以我确定它的值是一个数据框架。但是“pd.Panel(nas).to_frame().reset_index()”这种方式对我没有帮助!它输出了一个空的数据框架,并且有成千上万个由股票名称填充的列。
现在这让我很困扰,我想要的是像这样的数据框架:
index Date Open High Low Close Volume Adj Close CLSN 2015-12-31 1.92 1.99 1.87 1.92 79600.0 1.92
CLSN 2016-01-01 NaN NaN NaN NaN NaN NaN
ClSN 2016-01-04 1.93 1.99 1.87 1.93 39700.0 1.93
CCC 2015-12-31 17.270000 17.389999 17.120001 17.250000 177200.0 16.965361
CCC 2016-01-04 17.000000 17.219999 16.600000 17.180000 371600.0 16.896516
CCC 2016-01-05 17.190001 17.530001 17.059999 17.450001 417500.0 17.162061
当然,我可以使用for
循环来获取每个股票的数据框,但是将它们全部连接在一起让我感到困扰。
你有更好的想法吗?非常愿意知道!
给MaxU:
使用方法print(nas['CLSN'].head())
后,输出如下:
Open High Low Close Volume Adj Close
Date
2015-12-31 1.92 1.99 1.87 1.92 79600 1.92
2016-01-04 1.93 1.99 1.87 1.93 39700 1.93
2016-01-05 1.89 1.94 1.85 1.90 50200 1.90
2016-01-06 1.86 1.89 1.77 1.78 62100 1.78
2016-01-07 1.75 1.80 1.75 1.77 117000 1.77
reset_index(level = 0,drop = True)
。但是很奇怪,因为我希望在执行reset_index()
之后会有一个“major”列... - MaxU - stand with Ukraineminor Open High Low Close Volume Adj Close A 41.900002 42.349998 41.720001 41.810001 1449300.0 41.357005 A 37.369999 37.950001 37.000000 37.689999 2666200.0 37.281641 A 37.400002 38.029999 37.400002 37.610001 1831200.0 37.202510 A 40.240002 40.990002 40.049999 40.730000 2103600.0 40.288705
,你能解释一下吗? - Pan KevinDate
列是DF的索引。在我发布问题之前,我对输出进行了一些编辑,如果这让你感到困惑,我真的很抱歉... - Pan Kevin日期 开盘价 最高价 最低价 收盘价 成交量 \ minor A 2015-12-31 41.900002 42.349998 41.720001 41.810001 1449300.0 A 2016-02-01 37.369999 37.950001 37.000000 37.689999 2666200.0 A 2016-01-25 37.400002 38.029999 37.400002 37.610001 1831200.0 A 2016-01-06 40.240002 40.990002 40.049999 40.730000 2103600.0
谢谢@MaxU,谢谢你,你救了我的命!!! - Pan Kevin