#r
#r
Вопрос:
У меня есть набор данных в длинном формате, организованный по четыре раза для каждого субъекта. При группировке по номеру темы я пытаюсь сдвинуть все строки вверх на 1, а затем оставить последнее наблюдение для каждого предмета с NA.
Я попробовал это, но он сдвинул его вниз на 1, а не вверх на 1.
data_long_new <- data_long_new[, variable_lag:=c(NA, variable[-.N]), by=subject_id]
Любая помощь будет оценена.
Ответ №1:
глядя на тот факт, что вы используете data.table
data_long[, next.variable:=shift(variable, type="lead"), by= subject_id]
кроме того, ваш код почти правильный:
data_long_new[, variable_lead:=c(variable[-1],NA), by=subject_id]
Ответ №2:
Это сделало это.
data_long_new <- data_long %>% group_by(subject_id) %>% mutate(next.variable = lead(variable, order_by=subject_id))