马尔可夫链矩阵

时间:2017-05-08 19:47:55

标签: r

我正在尝试修改此代码,以便在100天内模拟1000个人。这里的代码仅供一个人使用。如何修改1000行和100列的矩阵?

days<-100
CURstate<-1
state<-numeric(days)
for(i in 1:days){
  randomNum<-runif(1)
  if(CURstate==0){
    if(randomNum < .04){
      CURstate <- 1
    }else{
      CURstate <- 0
    }
  }else{
    if(randomNum < .11){
      CURstate<-0
    }else{
      CURstate<-1
    }
  }
  state[i]<-CURstate
}

我已经尝试过这样做了,但我一直在回一个空矩阵,我不明白为什么。

days<-100
PopMat<- matrix(0,nrow = 1000,ncol = days)
for(j in 1:nrow(PopMat)){
    state<- PopMat
    CURstate<-0
    for (i in 1:days)
      randomNum<-runif(1)
      if(CURstate==0){
       if(randomNum < .04){
          CURstate <- 1
       }else{
         CURstate <- 0
        }
      }else{
        if(randomNum < .11){
          CURstate<-0
       }else{
          CURstate<-1
        }
      }
      state[j, i]<-CURstate
    }
state

1 个答案:

答案 0 :(得分:-1)

这是您的答案的一个解决方案。

table {
  width: 100%;
}

input {
  max-width: 100%;
}