library(plyr) CVgroup <- function(k,datasize,seed){ cvlist <- list() set.seed(seed) n <- rep(1:k,ceiling(datasize/k))[1:datasize] temp <- sample(n,datasize) x <- 1:k dataseq <- 1:datasize cvlist <- lapply(x,function(x) dataseq[temp==x]) return(cvlist) } k <- 10 datasize <- nrow(shuju_xiugai) cvlist <- CVgroup(k = k,datasize = datasize,seed = 11) #cvlist pred <- data.frame() #cvlist <- list() progress.bar <- create_progress_bar("text") progress.bar$init(k) for (i in 1:k){ train <- shuju_xiugai[-cvlist[[i]],] test <- shuju_xiugai[cvlist[[i]],] model<- randomForest(data = train,PM2.5~.,method="REML") prediction <- predict(model,subset(test,select = -PM2.5)) kcross <- rep(i,length(prediction)) temp <- data.frame(cbind(subset(test,select = PM2.5),prediction,kcross)) pred <- rbind(pred,temp) print(paste("randomForest")) progress.bar$step() }