R语言中如何通过flag条件判断是否执行循环?
实现方法
直接在原有循环外层加一层逻辑判断即可,R的if语句会自动识别flag的逻辑值,只有当flag为TRUE时才会执行内部的计数循环,其余情况直接跳过该段代码执行后续逻辑。
完整示例代码
# flag变量可根据实际场景赋值为TRUE或其他值 flag <- TRUE x <- c(2,5,3,9,8,11,6) count <- 0 # 外层判断控制循环是否执行 if (flag) { for (val in x) { if(val %% 2 == 0) count = count+1 } } # 后续其余代码直接写在这里即可
额外说明
如果需要严格规避flag为1、"TRUE"这类值时被R自动判定为逻辑真的情况,可以把判断条件替换为identical(flag, TRUE),此时只有flag是逻辑类型且取值为TRUE时才会触发循环执行。
内容的提问来源于stack exchange,提问作者psysky
相关产品推荐
相关产品推荐

