R 马尔可夫链矩阵
我试图修改这段代码,以便在100天内模拟1000个人。这里的代码只针对一个人。对于一个包含1000行和100列的矩阵,我将如何修改它R 马尔可夫链矩阵,r,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{ C
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这里有一个答案
set.seed(1121)
gen_state <- function() {
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
}
return(state)
}
state_matrix <- t(replicate(1000,gen_state()))
set.seed(1121)
根尤州
set.seed(1121)
gen_state <- function() {
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
}
return(state)
}
state_matrix <- t(replicate(1000,gen_state()))