Мы можем преобразовать столбцы 'DATE', 'TIME' в класс Datetime и преобразовать набор данных в xts
, указав order.by
library(xts)
library(lubridate)
xts(df1[-(1:2)], order.by = as.POSIXct(paste(df1$DATE,
hms::hms(seconds_to_period(df1$TIME)))))
# Col1 Col2
#1993-01-04 09:35:38 10.250 10.000
#1994-01-05 09:35:41 10.250 10.111
#1997-03-16 09:35:46 10.250 10.222
#2001-08-28 09:36:05 10.251 10.444
#2006-04-20 09:40:07 10.251 10.555
#2017-11-10 09:36:01 10.251 10.333
ПРИМЕЧАНИЕ. Для индекса xts
требуется объект класса Datetime, а не вектор класса форматированных символов
data
df1 <- structure(list(DATE = c("1993-01-04", "1994-01-05", "1997-03-16",
"2017-11-10", "2001-08-28", "2006-04-20"), TIME = c(34538L, 34541L,
34546L, 34561L, 34565L, 34807L), Col1 = c(10.25, 10.25, 10.25,
10.251, 10.251, 10.251), Col2 = c(10, 10.111, 10.222, 10.333,
10.444, 10.555)), class = "data.frame", row.names = c("1", "2",
"3", "4", "5", "6"))