###################################################spa
if 的应用与??。。。。。。ast
解决方案:test
# if(){}扩展
# if(){}else{}循环
# if(){}else if(){}else if(){}else{}next
# ifelse() #ifelse(2==2&1==2,"yes","noo") #[1] "noo" #像三元选择符,条件为真返回第二个参数,为假返回第三个参数。margin
totest = c(1,3,10,0,1,0,2)while
ifelse(totest == 1,"yes","no") #[1] "yes" "no" "no" "no" "yes" "no" "no"解决方案
ifelse(totest == 1,totest*3,totest+2) #[1] 3 5 12 2 3 2 4co
讨论扩展:
#复合检查。双重形式(&& 和 ||)最好用于if语句;单重形式(& 和 |)用于ifelse语句。双重仅仅比较两边的一个元素,单重比较两边的每个元素。
另请参阅:
###################################################
如何用 for 循环实现计算知足条件的个案数???
解决方案:
#例1:用 for 循环实现,计算知足条件的个案数。。
j = 0
for (i in iris1$Sepal.Length){
if (i>3 & i<5){j = j+1}
}
print(j)
#等价于:
length(which(iris1$Sepal.Length > 3 & iris1$Sepal.Length<5))
讨论扩展:
# next 约等于continue,,跳过本次循环的剩余部分,直接执行下一轮循环。不执行循环体中next后面的部分
# break 即 break。用法同样。
另请参阅:
###################################################
while循环,。。。
解决方案:
j = 1
while (j<=5 ){
print(paste("第",j,"行",sep = ""))
print(iris1[j,]);j = j+1
}
print(j)
讨论扩展:
另请参阅: