我已经尝试了几个小时来计算熵,我知道我错过了什么.希望有人在这里可以给我一个想法!
编辑:我认为我的公式错了!
码:
info <- function(CLASS.FREQ){
freq.class <- CLASS.FREQ
info <- 0
for(i in 1:length(freq.class)){
if(freq.class[[i]] != 0){ # zero check in class
entropy <- -sum(freq.class[[i]] * log2(freq.class[[i]])) #I calculate the entropy for each class i here
}else{
entropy <- 0
}
info <- info + entropy # sum up entropy from all classes
}
return(info)
}
Run Code Online (Sandbox Code Playgroud)
我希望我的帖子很清楚,因为这是我第一次在这里发帖.
这是我的数据集:
buys <- c("no", "no", "yes", "yes", "yes", "no", "yes", "no", "yes", "yes", "yes", "yes", "yes", "no")
credit <- c("fair", "excellent", "fair", …Run Code Online (Sandbox Code Playgroud)