字符值上的for循环迭代
我是R的新手,试着习惯循环。我目前正在解决一些练习,我现在被困在这一个 我有一个向量字符值上的for循环迭代,r,for-loop,character,R,For Loop,Character,我是R的新手,试着习惯循环。我目前正在解决一些练习,我现在被困在这一个 我有一个向量 v <- sample(c("cat", "dog", "mouse"), 100, replace = TRUE); 我知道这是非常基本的,但任何帮助都将不胜感激。v我认为您可以尝试下面的代码,在找到第五条“狗”后,for循环将终止 v <- sample(c("cat", "dog", "mouse"), 100, replace = TRUE) counter <- 0 for (
v <- sample(c("cat", "dog", "mouse"), 100, replace = TRUE);
我知道这是非常基本的,但任何帮助都将不胜感激。
v我认为您可以尝试下面的代码,在找到第五条“狗”后,for
循环将终止
v <- sample(c("cat", "dog", "mouse"), 100, replace = TRUE)
counter <- 0
for (value in v) {
if (value == "dog") {
counter <- counter + 1
print(sprintf("%s n_dogs found", counter))
}
if (counter == 5) {
break
}
}
ndog谢谢,更新了问题您可能还需要设置某种计数器
变量,当您找到狗时,该变量会增加1。也许把柜台放好,谢谢。但是,我想在第5个值之后中断(在打印它之后)。我可以添加另一个带有(counter==5)的if语句吗?我尝试了(v中的值){if(value==“dog”){print(sprintf(“%s n_dogs found”,counter));counter是的,您可以检查我的最新更新。counter
的值已更改,请注意。另外,不要忘记接受/更新答案:)
v <- sample(c("cat", "dog", "mouse"), 100, replace = TRUE)
counter <- 0
for (value in v) {
if (value == "dog") {
counter <- counter + 1
print(sprintf("%s n_dogs found", counter))
}
if (counter == 5) {
break
}
}
ndog <- 0
for (x in v) {
if (x == "dog") {
ndog <- ndog + 1
print(sprintf("%s n_dogs found", ndog));
}
if (ndog == 5) break
}