R 变量选择函数

R 变量选择函数,r,feature-selection,variable-selection,R,Feature Selection,Variable Selection,我想为变量选择定义一个函数 Var_Selection = function(data, target){ target = as.character(target) form = paste(target, '~ ') vect = c() valid.names <- names(data)[names(data) != "target"] myAIC = data.frame(var = as.character(), AIC = as.numeric())

我想为变量选择定义一个函数

Var_Selection = function(data, target){
  target = as.character(target)
  form = paste(target, '~ ')
  vect = c()
  valid.names <- names(data)[names(data) != "target"]
  myAIC = data.frame(var = as.character(), AIC = as.numeric())

  repeat{
    a=Sys.time()
    Perf = data.frame(variable = as.character(), AIC = as.numeric())

    for(i in 2:length(valid.names)){
      # Régression logistique pour chaque variable
      mylogit = glm(as.formula(paste(form, i), data=data, family="binomial"))
      # AIC pour chaque variable 
      Perf = rbind(Perf, 
                   data.frame(variable= i, 
                              AIC= extractAIC(mylogit)[2]))

    } 

    # Keep best variable 
    vect = c(vect,new_var)
    myAIC = rbind(myAIC,
                  data.frame(var = new_var,
                             AIC = Perf[Perf$variable == new_var,'AIC']))
    plot(myAIC[,2],type = 'b', ylab = 'AIC', main = new_var)
    print(new_var)


    b=Sys.time()
    print(b-a)


  }
  #mylogit = glm(as.formula(paste(form, paste(vect, collapse = ' + '))), data=data, family="binomial")
  #return(mylogit)
}
目标变量是Sin


我有以下错误:“错误为.formula(粘贴(form,I),data=data,family=“二项式”):未使用的参数(data=data,family=“二项式”)

是否应该粘贴(form,valid.names[I])?猜猜看。不,它也不会走路。好的,对不起,太吵了。您在错误的位置关闭了括号,它必须在
粘贴
之后,因为
数据=数据,family=“binomial”
不是
as.formula
的参数。
Marque  Cat  Usag  Cyl  Sin 
ACM     S    Pr    12   1
ADIVA   S    A     28   0 
BMW     M    M     192  0