2017-10-19 95 views

回答

0

我假设你的数据集看起来像这样。

mydf <- data.frame(target = c(1:100), 
        param1 = c(rep("a",10), rep("b", 50), 
           rep("c", 20), rep("a",15), rep(NA, 5)), 
        param2 = runif(100,0,1), 
        param3 = c(runif(20,1,10),runif(50,20,30),rep(NA,10), 
           runif(10,0,5), runif(10,70,80))) 
  1. 要仅使用所需的列

    a。您可以在您的公式中指定要在随机森林中使用的列。 myrf <- randomForest(target ~ param1 + param2, mydf) # this excludes param3

    b。否则,您可以通过仅保留期望的列来对数据集进行分类。

    mydf2 <- mydf[,c(target,param1,param2] 
    myrf <- randomForest(target ~ ., mydf2) 
    
  2. 要处理NA值

    a。你可能会试图归咎他们。

    b。或者你可以另一个图书馆来处理它们,如rpart

最后,我建议你看看这个主题。

How to build random forests in R with missing (NA) values?

+0

太棒了!谢谢 –