来自熊猫的雅虎财务数据的时间序列

时间:2015-04-30 03:26:48

标签: python pandas matplotlib plot

我将yahoo的股票价格数据保存在数据框架price_data的字典中,我想用这个生成一些基本的时间序列图。

我已尝试在这里使用其他几个答案,但是我最终得到了一些混乱的结果。例如,x轴无法从this one正确显示。

从数据框Adj Close生成price_data['AAPL']列的时间序列的最佳方法是什么,并将结果保存到png文件?

以下是有关此数据框结构的一些信息:

In [41]: type(price_data['AAPL'])
Out[41]: pandas.core.frame.DataFrame

In [42]: list(price_data['AAPL'].columns.values)
Out[42]: ['Open', 'High', 'Low', 'Close', 'Volume', 'Adj Close']

In [45]: type(price_data['AAPL'].index)
Out[45]: pandas.tseries.index.DatetimeIndex

1 个答案:

答案 0 :(得分:0)

您需要将Date列设置为Timestamps并将其设置为索引。

In [829]: temp
Out[829]: 
       Date   Open   High    Low  Close    Volume    Adj  
0  19/10/11  27.37  27.47  27.01  27.13  42880000  27.13
1  18/10/11  26.94  27.40  26.80  27.31  52487900  27.31
2  17/10/11  27.11  27.42  26.85  26.98  39433400  26.98
3  14/10/11  27.31  27.50  27.02  27.27  50947700  27.27

In [830]: temp['Date'] = pd.to_datetime(temp['Date'])

In [831]: temp
Out[831]: 
        Date   Open   High    Low  Close    Volume    Adj
0 2011-10-19  27.37  27.47  27.01  27.13  42880000  27.13
1 2011-10-18  26.94  27.40  26.80  27.31  52487900  27.31
2 2011-10-17  27.11  27.42  26.85  26.98  39433400  26.98
3 2011-10-14  27.31  27.50  27.02  27.27  50947700  27.27

而且,这会得到你的情节:

In [832]: temp.set_index('Date')['Adj'].plot()