Расчет ускорения автомобиля по времени и скорости записи в R - PullRequest
0 голосов
/ 31 октября 2018

Я хотел бы рассчитать новую переменную «ускорение (в м / с ^ 2)» для продольных записанных данных автомобиля и иметь только скорость автомобиля (в м / с) и время записи (в с).

Это часть кадра данных df:

 speed time_sec
1 27.520    0.273
2 27.520    0.313
3 27.172    0.353
4 26.887    0.393
5 26.560    0.433
6 26.560    0.473

Как я могу добавить новую переменную «ускорение (положительные значения) / замедление (отрицательные значения)» в каждую строку записи автомобиля?

1 Ответ

0 голосов
/ 31 октября 2018

Это в основном дельта-скорость, деленная на дельта-время. Поэтому дважды используйте diff и не забывайте, что первое значение не вычисляется из данных.

c(NA, with(cars, diff(speed)/diff(time_sec)))
#[1]     NA  0.000 -8.700 -7.125 -8.175  0.000

cars$accel <- c(NA, with(cars, diff(speed)/diff(time_sec)))

Данные.

cars <- read.table(text = "
 speed time_sec
1 27.520    0.273
2 27.520    0.313
3 27.172    0.353
4 26.887    0.393
5 26.560    0.433
6 26.560    0.473                   
", header = TRUE)
...