R/selectRuleRRF.R

Defines functions selectRuleRRF

Documented in selectRuleRRF

selectRuleRRF <-
function(ruleMetric,X,target){
  ruleI = sapply(ruleMetric[,"condition"],rule2Table,X,target)
  coefReg <- 0.95 - 0.01*as.numeric(ruleMetric[,"len"])/max(as.numeric(ruleMetric[,"len"]))
  rf <- RRF(ruleI,as.factor(target), flagReg = 1, coefReg=coefReg, mtry = (ncol(ruleI)*1/2) , ntree=50, maxnodes= 10,replace=FALSE) 
  imp <- rf$importance/max(rf$importance)
  feaSet <- which(imp > 0.01)
  ruleSetPrunedRRF <- cbind(ruleMetric[feaSet,,drop=FALSE],impRRF=imp[feaSet])
  ix = order(as.numeric(ruleSetPrunedRRF[,"impRRF"]),
              - as.numeric(ruleSetPrunedRRF[,"err"]),
              - as.numeric(ruleSetPrunedRRF[,"len"]),
              decreasing=TRUE)
  ruleSelect <- ruleSetPrunedRRF[ix,,drop=FALSE]
  return(ruleSelect)
}

Try the inTrees package in your browser

Any scripts or data that you put into this service are public.

inTrees documentation built on June 1, 2022, 1:06 a.m.