R - 使用 XTS 后,我得到双日期和时间列?并且获取错误'x'必须是时序对象



我面临一个问题。我正在尝试将我的数据转换为xts对象,以便稍后可以合并时间序列并绘制它们。但我得到了一个错误"x"必须是一个时间序列对象。我将在这里展示一个示例数据。

time<-c("21.11.2021 22:45", "21.11.2021 23:25")
time_p<-as.POSIXct(time, format='%d.%m.%Y %H:%M')
value1<-c(1,9)
value1<-as.numeric(value1)
value2<-c(1,21)
value2<-as.numeric(value2)
time_dataframe<-cbind.data.frame(time_p,value1,value2)
time_dataframe<-xts(time_dataframe,order.by(time_p)

但当我绘图时,我得到一个错误"x"必须是一个时间序列。

我也得到了输出2倍的日期和时间列,如下所示。

time_p            value 1    value 2
2021-11-21 22:45:00  2021-11-21 22:45:00      1          1
2021-11-21 23:25:00  2021-11-21 23:25:00      9          21 

数据部分不应包含时间。

library(xts)
time <- c("21.11.2021 22:45", "21.11.2021 23:25")
time_p <- as.POSIXct(time, format='%d.%m.%Y %H:%M')
value1 <- c(1, 9)
value2 <- c(1, 21)
xts(cbind(value1, value2), time_p)
##                     value1 value2
## 2021-11-21 22:45:00      1      1
## 2021-11-21 23:25:00      9     21

DF <-  data.frame(time_p, value1, value2)
z <- read.zoo(DF)
as.xts(z)
# same

最新更新