У меня есть фрейм данных с именем df, где все столбцы имеют класс "POSIXct".Вот так:
df
X1 X2
1 2000-01-01 00:00:00 2000-01-01 00:00:03
2 2000-01-01 00:00:01 2000-01-01 00:00:04
3 2000-01-01 00:00:02 2000-01-01 00:00:05
Я хочу, чтобы все значения были в одном векторе "POSIXct" путем извлечения значений по строкам.Итак, это мой ожидаемый результат:
vec <- magicfunction(df)
vec
2000-01-01 00:00:00 2000-01-01 00:00:03 2000-01-01 00:00:01 2000-01-01 00:00:04 2000-01-01 00:00:02 2000-01-01 00:00:05
К сожалению, do.call ("c", df) работает по столбцам.Существует вопрос о том, как выводить список по строкам, где рекомендуется использовать t (), но использование функции t () преобразует информационный кадр в матрицу, которая также не работает с датами.Кроме того, apply (df, 1, function (x) ...) обрабатывает кадры данных по строкам, но apply () также изменяет даты.С другой стороны, lapply () работает с датами, но работает по столбцам.
Это данные, которые я использовал в примере:
library(lubridate)
k <- 2
vec <- seq(ymd_hms("2000-01-01 00:00:00"),
ymd_hms("2000-01-01 00:00:5"),
by = 1)
df <- as.data.frame(split(vec, f = as.factor(rep(1:k, each = length(vec)/k))))