2013-01-02 39 views
2

我使用bayesglm的回归问题。它是一个包含150行和2000个变量的数据集。我试图做变量选择,通常看glmnetcaret::rfe。但是,bayesglm没有方法。[R插入符号/ RFE/bayesglm特征选择

反正是有手动定义rfe的方法?

+0

您可以指定特征选择涉及rfeControl()要做rfe?和(来自尖号说明书)这些函数_examples包含在包:lmFuncs,rfFuncs,treebagFuncs和 nbFuncs._,没有bayesglm功能?是对的吗? –

回答

5

对于这个问题我只能想到改写lmFuncs$fit功能,例如:

lmFuncs$fit<-function (x, y, first, last, ...){ 
    tmp <- as.data.frame(x) 
    tmp$y <- y 
bayesglm (y ~ ., family = gaussian, data = tmp) 
} 

,然后做你的rfe.fitrfeControl(functions = lmFuncs)

+0

真棒。我不知道你可以重写这些函数。非常感谢你。 – screechOwl

+0

希望它会做的伎俩!我使用插入符号的特征选择,但不是重写功能,我用从插入符号所有可能的回归/分类的训练方法,然后我跟拟合模型调用其中RFE()函数或预测()。然后我假设从最终模型(主要是人工神经网络)明确哪些特征。 –