2010-10-21 57 views
0

我已經從一個SQL查詢中獲得了事務性數據,我把它變成了一個數據框。 df的第一列包含UNIX時間戳(format =「%Y /%d /%m%H:%M」),我想用它來創建一個使用par的圖形繪圖來顯示每個日期的唯一線圖。目前我正在分裂第1列並與前一行比較以尋找變化,然後分配虛擬指標以用於我的繪圖命令。 謝謝, 將按日期劃分的R圖

+4

添加你嘗試一些示例數據和代碼。這對幫助你更容易。 – 2010-10-21 18:17:48

回答

1

沒有任何示例數據有點難以回答,但我會拍攝。

我猜你的約會對象是這樣的:"2009-03-04 17:45"

它可能被解讀爲字符。您可以通過運行str(data.frame)

使用包stringr驗證該類數據幀的每一列的,你可以只讀取Y/d/m和將其轉換成一個Date類,像這樣:

library(stringr) 
date="2009-03-04 17:45" 
date=as.Date(str_replace_all(str_sub(date,3,10),"-","/"), "%y/%d/%m") 

然後,您可以使用date作爲ggplot2中的一組來繪製每個日期的一行。您也可以在ggplot調用中使用+ facet_wrap(~date)創建單獨的面板(每個日期一個面板)。

+0

'as.Date(「2009-03-04 17:45」)'也可以:) – Marek 2010-10-22 07:08:28

+0

我以我複雜的解決方案着稱。 ;) – Maiasaura 2010-10-22 16:02:54

1
  1. 開始從你的時間戳

    SELECT *,DATE(timestampcolumn)作爲thedate FROM yourtable剛開日期部分;

  2. 轉換日期列對因子

    是myDF < - 變換(myDF上,as.factor(thedate))

  3. 劇情它與例如xyplot

    庫(晶格) xyplot(VARx前提〜變化| thedate,數據= myDF上)