Я наблюдал за несколькими темами в течение 2-5 лет и каждый год спрашивал, есть ли у них определенный симптом («да» или «нет»). Я хочу подсчитать, сколько раз изменялось это состояние-состояние/переменная, то есть количество сдвигов (от «нет» до «да» или от «да» до «нет») в течение периода наблюдения (год 1 до 5) в пределах каждый предмет. К сожалению, у меня есть som NA, где субъект не ответил. Эти НС следует игнорировать.Подсчитайте количество изменений в категориальных переменных во время повторных измерений
subject<-c("a","b","c","d")
year1 <- c("no", "yes", NA, NA)
year2 <- c("yes", "yes", NA, "yes")
year3 <- c("no", "yes", "yes", NA)
year4 <- c("yes", "yes", NA, "no")
year5 <- c("yes", "yes", "yes", NA)
df = data.frame(subject, year1, year2, year3, year4, year5)
df
Как создать новые числовые переменные "$ Df сдвигов" [Число сдвигов (п)]? В этом примере «сдвиги df $» должны стать 3,0,0,1.
Из любопытства я попытался сделать это с помощью dplyr. Вы знаете, можно ли это сделать? 'df%>% select (-subject)%>% rowwise()%>% mutate (x1 = list (function (x) rle (x [! is.na (x)]) $ values))' не даже заставьте меня хранить x1. – Haboryme
@Haboryme Вы можете называть 'df%>% rowwise()%>% do (' – akrun
Не знаю 'do' Я попытаюсь с этим. Спасибо. – Haboryme