用于R studio中的函数
有人能解释一下为什么这个代码会导致15个错误吗用于R studio中的函数,r,for-loop,R,For Loop,有人能解释一下为什么这个代码会导致15个错误吗 k<-0 for(i in 1:3){ k<-k+1 for(j in 1:2){ k<-k+2 } } k它的作用是: k因为为(1:3中的i)写入意味着“对1和3之间的每个值执行以下操作,如果遇到字母i,则用该值替换它”。碰巧,i和j都不会出现在循环体中,但这并不会阻止循环的执行 因此,代码扩展为: k所以有三个循环i,每个循环运行两个循环j: in i = 1 0 + 1 = 1; then j=1,
k<-0
for(i in 1:3){
k<-k+1
for(j in 1:2){
k<-k+2
}
}
k它的作用是:
k因为为(1:3中的i)写入意味着“对1和3之间的每个值执行以下操作,如果遇到字母i,则用该值替换它”。碰巧,i和j都不会出现在循环体中,但这并不会阻止循环的执行
因此,代码扩展为:
k所以有三个循环i,每个循环运行两个循环j:
in i = 1
0 + 1 = 1; then j=1, you have 1+2=3 and j=2, you have 3+2=5 ==> k is now 5
in i = 2
5 + 1 = 6; then j=1, you have 6+2=8 and j=2, you have 8+2=10 ==> k is now 10
in the 3rd loop, i = 3,
10+1=11; then j=1 gives you 11+2 =13 and j=2 gives 13+2=15 ==> hence k is 15
这是全部进展
i = 1: k <- k + 1 gives 1
j = 1: k<-k+2 gives 3
j = 2: k<-k+2 gives 5
i = 2: k <- k + 1 gives 6
j = 1: k<-k+2 gives 8
j = 2: k<-k+2 gives 10
i = 3: k <- k + 1 gives 11
j = 1: k<-k+2 gives 13
j = 2: k<-k+2 gives 15
i=1:k内环,即
for(j in 1:2){
k<-k+2
}
k<-k+1
for(j in 1:2){
k<-k+2
}
for(1:2中的j){
kNice回答,Allan。它将循环展开为迭代步骤,清楚地(我认为)显示正在发生的事情。