我有一个3x3数据帧。其中一行包含日期和时间信息。当我将数据帧转换为xts对象时,转换会从数据中删除Time,只留下Date。我必须有错误的代码。然而,我相信我正确地遵循了指示。非常欢迎任何帮助。
library(xts)
library(data.table)
DATSB <- structure(list(DateTime = c("3/28/2016 20:37", "3/28/2016 20:36","3/28/2016 20:35"), Last = c(1221.7, 1221.8, 1221.9), Volume = c(14L,2L, 22L)), .Names = c("DateTime", "Last", "Volume"), row.names = c(NA,3L), class = "data.frame")
setDF(DATSB)
DATSB$DateTime <- strptime(DATSB$DateTime, format = "%m/%d/%Y %H:%M")
DATSBxts <- as.xts(DATSB[, -1], order.by = as.Date(DATSB$DateTime, "%Y/%m/%d %H:%M"))
Output for data.frame DATSB:
DateTime Last Volume
1 2016-03-28 20:37:00 1221.7 14
2 2016-03-28 20:36:00 1221.8 2
3 2016-03-28 20:35:00 1221.9 22
Output for xts object DATSBxts:
Last Volume
2016-03-28 1221.7 14
2016-03-28 1221.8 2
2016-03-28 1221.9 22
答案 0 :(得分:1)
像这样DATSBxts <- as.xts(DATSB[, -1], order.by = DATSB$DateTime)