Я новичок в R и пытаюсь привыкнуть к циклам. В настоящее время я решаю пару упражнений для практики, и в настоящее время я застрял в этом;
У меня есть вектор
v <- sample(c("cat", "dog", "mouse"), 100, replace = TRUE);
Теперь вопрос заключается в создании для l oop, который перебирает все значения 'v' и сколько значений собак найдено до этого момента. При достижении пятого значения «собака» вы должны остановиться. (после соответствующего отпечатка). Используйте break.
Начнем с того, что я не могу произвести первую итерацию, где я получаю вывод типа "1 n_dogs found". Кроме того, я не уверен, как посчитать количество найденных «собак» и взломать l oop после вывода пятого значения «собака». После нескольких попыток я закончил здесь (что не дает ничего близкого к желаемому результату)
for (index in 1:length(v)){
if (v[index] == "dog"){
print(sprintf("%s n_dogs found", v[index]));
break;
} else {
print(sprintf("%s n_dogs found", v[index]));
}
}
Я знаю, что это очень просто c, но любая помощь будет оценена.