我正在尝试将数据转换为xts,但始终收到“order.by需要适当的基于时间的对象”错误,因此我尝试将日期时间转换为正确的格式。
我的数据如下所示:
Date Time Value
20090202 9:30 1
20090202 9:31 2
20090202 9:32 3
20090202 9:33 4
20090202 9:34 5
20090202 9:35 6
我也这样做:data.frame(cbind(theData $ Date,theData $ Time))产生:
1 2
20090202 09:30
20090202 09:31
20090202 09:32
20090202 09:33
20090202 09:34
20090202 09:35
我如何将它们合并为一列,所以它:
1
20090202 09:30
20090202 09:31
20090202 09:32
20090202 09:33
20090202 09:34
20090202 09:35
这样我就可以将其放入xts()
最佳答案
您只需要在日期和时间列上使用paste
,然后在其上调用as.POSIXct
。
theData <- read.table(text="Date Time Value
20090202 9:30 1
20090202 9:31 2
20090202 9:32 3
20090202 9:33 4
20090202 9:34 5
20090202 9:35 6", header=TRUE, as.is=TRUE)
theData$DateTime <- paste(theData$Date, theData$Time)
xts(theData$Value, as.POSIXct(theData$DateTime, format="%Y%m%d %H:%M"))
关于r - 转换日期时间格式以在XTS中使用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18261160/