Я вычисляю, сколько последовательных 0 или 1 в последовательности из 10 чисел. Например, 0 0 1 0 1 1 0 1 0 1 1 1 Есть 4 (00, 11, 11, 11) ).
Вот мой код.
c <- floor(2 * runif(10)) count = 0 for (i in 1:length(c)) { a = c[i] b = c[i+1] if (a == b) { count = count + 1 } count }
Ошибка: ошибка в том случае, если (a == b) {: пропущенное значение там, где необходимо ИСТИНА / ЛОЖЬ
Спасибо .
Мы можем использовать rle:
rle
with(rle(x), sum(lengths[lengths > 1] - 1)) #[1] 4
данные
x <- c(0, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1)