2016-04-30 49 views
1

以下是我的數據集。用時間變量創建一個dygraph

Time Sunday Saturday 
12:00pm 0.45  0.53 
2:00pm 0.30  0.01 
4:00pm 0.04  0.00 
6:00pm 0.01  0.16 
8:00pm 0.20  0.30 

我試圖創建一個dygraph但是當我嘗試,我得到如下:

dygraph(df) 
Error in dygraph(df) : Unsupported type passed to argument 'data'. 

基本上,我的問題是我怎麼轉換時間變量轉換爲可識別的變量作爲R的時間。

我試過format="%H:%M"但這樣會導致變量有NAs。

+0

請你的問題重現的。 –

回答

2

您必須將您的數據錶轉換爲timeseries對象。請注意,今天的日期將被格式化爲strptime。還要注意的是,時區是BST

rm(list=ls()) 
library(dygraphs) 
library(xts) 
options(stringsAsFactors=F) 
my_data <- as.data.frame(cbind(Time=c("12:00pm","2:00pm","4:00pm","6:00pm","8:00pm"), Sunday=c(0.45,0.3,0.04,0.01,0.2), 
           Saturday=c(0.52,0.01,0,0.16,0.3))) 
my_data$Time <- strptime(my_data[,1],format="%I:%M %p") 
my_data <- xts(my_data[,-1], order.by=my_data[,1]) 
index(my_data) <- index(my_data)-0 
dygraph(my_data) 

enter image description here

+0

感謝這個答案,但你爲什麼需要'index(my_data)< - index(my_data)-0'? – hartmut