我想運行一個循環,產生5個隨機樣本,然後5個不同的RandomForest模型。運行多個模型使用for循環在r
我在第二部分遇到麻煩(運行模型);我不能接近因變量(nam$eR
在下面的代碼):
numS <- 5 # number of samples
dataS <- ERC3
rfModels <- list()
for(j in 1:numS) {
print(j)
set.seed(j+1)
nam <- paste("RFs", j, sep = "")
assign(nam, dataS[sample(nrow(dataS),100000),]) # Random sample of 100,000 rows.
namM <- paste("RFfit", j, sep = "")
assign(namM, randomForest(as.factor(nam$eR)~., data=nam[,-231], importance = TRUE))
rfModels[[j]] <- namM
}
預先感謝您!
我可能錯過了一些東西;你如何運行5個數據集?並且..你能告訴我什麼功能(m)的部分.. tks! – staove7
'lapply'讓我們在列表中的每個元素上應用一個函數。我們製作了一個數據幀列表,我們稱之爲'dfs',然後在該列表上使用'lapply',用'randomForest(mpg〜。,data = m,importance = TRUE)'函數來命中每個數據幀。在這種情況下,'m'只是一個佔位符/簿記工具,所以我們知道我們將每個完整的數據框元素從'dfs'列表傳遞到'randomForest'的'data ='參數。 –
偉大的答案-Tks ..我寫了下面一行:'lapply(dataL,function(m)randomForest(as.factor(eR)〜。, data = m [, - 231],importance = TRUE))'但它告訴我_ .factor(x):object'eR'not found_。你可以幫我解決這個問題.. – staove7