Во-первых, я прошу прощения за "не очень подходящий" заголовок для моего вопроса.У меня есть следующий фрейм данных (df
):
TIMESTAMP GPSSpeed_kmh accel jerk
863 2018-11-10 13:37:59 36.4 -0.3 0.0
864 2018-11-10 13:38:00 35.3 -0.3 -0.1
865 2018-11-10 13:38:01 34.2 -0.4 0.0
866 2018-11-10 13:38:02 32.8 -0.4 -0.4
867 2018-11-10 13:38:03 31.3 -0.8 -0.4
868 2018-11-10 13:38:04 28.4 -1.2 -0.1
869 2018-11-10 13:38:05 24.1 -1.3 0.6
870 2018-11-10 13:38:06 19.4 -0.7 0.3
871 2018-11-10 13:38:07 16.9 -0.4 0.3
872 2018-11-10 13:38:08 15.5 -0.1 0.2
873 2018-11-10 13:38:09 15.1 0.1 0.4
874 2018-11-10 13:38:10 15.5 0.5 0.4
875 2018-11-10 13:38:11 17.3 0.9 0.1
876 2018-11-10 13:38:12 20.5 1.0 -0.4
877 2018-11-10 13:38:13 24.1 0.6 -0.4
878 2018-11-10 13:38:14 26.3 0.2 0.0
879 2018-11-10 13:38:15 27.0 0.2 0.0
880 2018-11-10 13:38:16 27.7 0.2 0.0
881 2018-11-10 13:38:17 28.4 0.2 0.5
882 2018-11-10 13:38:18 29.2 0.7 0.0
883 2018-11-10 13:38:19 31.7 0.7 -0.4
884 2018-11-10 13:38:20 34.2 0.3 NA
885 2018-11-10 13:38:21 35.3 NA NA
Столбец GPSpeed_kmh
является первичными данными.Столбец ускорения (accel
в м / с ^ 2) рассчитывался как производная от столбца GPSSpeed_kmh
по времени, а столбец jerk
(в м / с ^ 3) - как производная ускорения по времени.Я использовал следующий код для отображения скорости, ускорения и рывка во времени:
data.m<-melt (df, measure.vars = c("GPSSpeed_kmh", "accel", "jerk"))
ggplot(data.m, aes(TIMESTAMP, value)) +
geom_line(col = "red") +
geom_smooth() +
facet_grid(variable~., scales="free_y") +
scale_x_datetime(labels = date_format("%H:%M:%S", tz="Europe/Athens"))
, и в результате получилось следующее: Как видите, строка GPSSpeed_kmh
длитсядольше по сравнению с accel
и jerk
.Разумно в том смысле, что столбцы accel
и jerk
имеют NA
s в последних строках.Я хочу сделать графики accel
и jerk
со временем, чтобы закончить на том же TIMESTAMP
, что и график GPSSpeed_kmh
.Есть идеи?Заранее спасибо!