Я пытаюсь найти точку, в которой участники достигают 8 последовательных ответов подряд, превышающих 3. Например:
x <- c(2,2,4,4,4,4,5,5,5,5,7)
я хочу вернуть значение 10.
я попробовал код (Спасибо @DWin):
which( rle(x)$values>3 & rle(x)$lengths >= 8)
sum(rle(x)$lengths[ 1:(min(which(rle(x)$lengths >= 8))-1) ]) + 8
проблема с приведенным выше кодом заключается в том, что он работает, только если все ответы идентичны и больше 3. таким образом, код возвращаетноль.
если:
x <- c(2,2,4,4,4,4,4,4,4,4,7)
код работает нормально.но мои данные выглядят не так.
Заранее спасибо!