计算R中多路分割的基尼指数
我试图计算R的基尼指数。 按如下方式计算二叉决策树的基尼指数没有问题。计算R中多路分割的基尼指数,r,decision-tree,gini,R,Decision Tree,Gini,我试图计算R的基尼指数。 按如下方式计算二叉决策树的基尼指数没有问题。 gini_process <- function(classes,splitvar = NULL){ #Assumes Splitvar is a logical vector if (is.null(splitvar)){ base_prob <-table(classes)/length(classes) return(1-sum(base_prob**2)) } base_p
gini_process <- function(classes,splitvar = NULL){
#Assumes Splitvar is a logical vector
if (is.null(splitvar)){
base_prob <-table(classes)/length(classes)
return(1-sum(base_prob**2))
}
base_prob <-table(splitvar)/length(splitvar)
crosstab <- table(classes,splitvar)
crossprob <- prop.table(crosstab,2)
No_Node_Gini <- 1-sum(crossprob[,1]**2)
Yes_Node_Gini <- 1-sum(crossprob[,2]**2)
return(sum(base_prob * c(No_Node_Gini,Yes_Node_Gini)))
}
gini_过程