2014-07-12 147 views
2

我試圖從MySQL服務器的數據,使數據幀一出後援SQL查詢我使用的是如何將熊貓系列轉換爲時間序列?

sql="""SELECT dp.Date, dp.Open , dp.High, dp.Low, dp.Close, dp.Volume, dp.Adj 
    FROM tickers AS tick 
    INNER JOIN daily_price AS dp 
    ON dp.ticker_id = tick.id 
    WHERE tick.ticker = '%s' 
    ORDER BY dp.Date ASC;"""%(ticker) 
goog = psql.frame_query(sql, con=con, index_col='Date') 

這是工作完全正常,但是當我使用的功能df=obtain_df(ticker)obtain_df只是功能獲得dataframe)並使用type(df['High'])panda.series而不是timeseries?我不知道這個原因。在我的SQL服務器中,日期格式爲'DATE'。

你可以建議我如何將系列轉換爲時間序列?

da['Date']=pd.DatetimeIndex(da['Date']) 

da.set_index('Date') 

print da.head() 

我得到以下輸出enter image description here

如何使日期列的索引。

+0

從'dataframe'爲例給出了一些數據。 – furas

+0

您目前的數據格式是什麼?你可以用'df ['Date']來測試dtype' – Ffisegydd

+0

df ['Date']。dtype將它作爲一個對象,所以我如何改變日期 – user3792657

回答

0

嘗試:

df['Date'] = pd.DatetimeIndex(df['Date']) 

或:

df['Date'] = pd.to_datetime(df['Date']) 

如果你有不尋常的格式datetime

df['Date'] = pd.to_datetime(df['Date'], format="%d%m%Y") 
+0

我使用了第一個,它確實工作,但知道它不能將我的日期設置爲索引,更多信息請查看我在編輯中的問題 – user3792657

+0

'da.set_index(da ['Date'])' – furas