varimp()
我对派对包中的功能行为感到困惑。
我正在使用条件随机森林来获得 Strobl 等人的变量重要性。2009 年的建议。
它适用于我所有的数据集,但只有一个。我必须将我的观察进行子集化。但是,即使条件随机森林在完整数据集上正常运行,它也只为子集返回零......并且似乎根本不运行,但不会产生错误。
我想知道预测变量的数量是否太多,只能进行少量观察,并尝试仅使用有限数量的预测变量,但它给了我相同的结果。正如在其他情况下指出的那样,它似乎也没有链接到变量类型......
我显然错过了一些东西,但我就是不知道是什么......
如果有人对我应该关注的方向有所了解,我将不胜感激。
我的数据在这里。
VarforCRF <- read.csv("Data.csv",sep=";",dec=",",row.names=1)
library(party)
set.seed(round(runif(1,0,1)*10000))
# Run just fine with the entire dataset
cRF <- cforest(Syrph_pred~.,data = VarforCRF, control = cforest_unbiased(ntree=100))
varimp(object = cRF,conditional = T)
CRF_West <- subset(VarforCRF,Sector == "West")
# Does not seem to run at all with subset and return zeros
cRF_W <- cforest(Syrph_pred~.,data = CRF_West, control = cforest_unbiased(ntree=100))
varimp(object = cRF_W,conditional = T)