R语言.if else x

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/02 13:28:27
R语言.if else x

R语言.if else x
R语言.if else
x

R语言.if else x

我理解,你的意思是循环的判断,当最后一项为1,且第一项为0 的时候,那么这两者交换;

但是,代码表示的逻辑是,不论是不是最后一项,只要不满足当前项为1,下一项为0,就做else块中的代码;可见当i=1,5,6,7,8,9,10时,都执行了else中的代码;

最后,按照你的风格,修改如下:

 redrowmove<-function(x){
  for(i in 1:(length(x)-1)){
    if(x[i]==1 && x[i+1]==0){
      x[i]=0
      x[i+1]=1
    }
  }
  if(x[length(x)]==1 && x[1]==0){
    x[length(x)]=0
    x[1]=1
  }
  return(x)
}