我正在使用的数据集如下所示。这是一个csv文件。
Date Subject val1 val2 val3
2010-05-01 12 -0.6155 0.5083 2.6286
2010-06-03 13 0.96416 0.785 1.41
2010-07-01 14 0.9578 1.258 0.579
2010-08-01 15 1.249 1.879 0.268
我正在尝试将数据可视化为gvisMotionchart。
我的代码是: -
test_motionchart<-read.csv("data.csv")
test_motion=gvisMotionChart(test_motionchart,idvar="Subject",timevar="Date")
执行此代码后,我收到错误消息
Error in testTimevar(x[[options$data$timevar]], options$data$date.format) :
The timevar has to be of numeric or Date format. Currently it is factor
任何有助于摆脱这种情况的帮助。
提前致谢
答案 0 :(得分:2)
错误告诉您到底出了什么问题:
test <- read.table(text="Date Subject val1 val2 val3
2010-05-01 12 -0.6155 0.5083 2.6286
2010-06-03 13 0.96416 0.785 1.41
2010-07-01 14 0.9578 1.258 0.579
2010-08-01 15 1.249 1.879 0.268",header=TRUE)
> str(test$Date)
Factor w/ 4 levels "2010-05-01","2010-06-03",..: 1 2 3 4
请参阅Factor w/ 4 levels
?您需要Date
代替。
尝试:
test$Date <- as.Date(test$Date)
现在:
> str(test$Date)
Date[1:4], format: "2010-05-01" "2010-06-03" "2010-07-01" "2010-08-01"
或者,当您使用Date
选项读取csv时,您可以指定要为特定变量输出colClasses
:
test <- read.csv(
filename.csv,
header=TRUE,
colClasses=c(Date="Date")
)