1
7/17/2019 Código Entropia y Discretización http://slidepdf.com/reader/full/codigo-entropia-y-discretizacion 1/1 #########Código entropia######## ################# Se introducen la matriz M1 a analizar M1<-matrix(c(1,2,3,4,1,2,3,4,5),nc=3) M1<-M1[,-3] matriz=matrix(0,nr=dimM1[1],nc=dim(M1)[1]) ##################Cálculo de entropia for(i in 1:(dim(M1)[1]-1)){ for(j in (i+1):(dim(M1)[1])){ for(k in (h+1):(dim(M1 )[2])){ if(M1[i,k]==M1[j,k]){ matriz[i,j]=matriz[i,j]+1/(dim(M1)[2]-1) }}}} entropia=-(matriz*log(matriz,base = 10))-((1-matriz)*log(1-matriz,base = 10)) resultadoentropida<-sum(entropia,na.rm = 1) ########Código discretización por bines###### data(iris) x <- iris[,4] hist(x, breaks=20, main="Data") def.par <- par(no.readonly = TRUE) # Guardar layout(mat=rbind(1:2,3:4)) ### Intervalo igual table(discretize(x, categories=4)) hist(x, breaks=20, main="Equal Interval length") abline(v=discretize(x, categories=4, onlycuts=TRUE), col="red") ### Igual frecuencua table(discretize(x, "frequency", categories=4)) hist(x, breaks=20, main="Equal Frequency") abline(v=discretize(x, method="frequency", categories=4, onlycuts=TRUE), col="red") ### k-means table(discretize(x, "cluster", categories=4)) hist(x, breaks=20, main="K-Means") abline(v=discretize(x, method="cluster", categories=4, onlycuts=TRUE), col="red") ### Número de intervalos elegido por el usuario table(discretize(x, "fixed", categories = c(-Inf,.8,Inf))) table(discretize(x, "fixed", categories = c(-Inf,.8, Inf) ,  labels=c("small", "large"))) hist(x, breaks=20, main="Fixed") abline(v=discretize(x, method="fixed", categories = c(-Inf,.8,Inf),  onlycuts=TRUE), col="red") par(def.par) # reset to default

Código Entropia y Discretización

Embed Size (px)

DESCRIPTION

Código Entropia y Discretización

Citation preview

Page 1: Código Entropia y Discretización

7/17/2019 Código Entropia y Discretización

http://slidepdf.com/reader/full/codigo-entropia-y-discretizacion 1/1

#########Código entropia########

################# Se introducen la matriz M1 a analizarM1<-matrix(c(1,2,3,4,1,2,3,4,5),nc=3)M1<-M1[,-3]matriz=matrix(0,nr=dimM1[1],nc=dim(M1)[1])##################Cálculo de entropia

for(i in 1:(dim(M1)[1]-1)){ for(j in (i+1):(dim(M1)[1])){ for(k in (h+1):(dim(M1)[2])){if(M1[i,k]==M1[j,k]){matriz[i,j]=matriz[i,j]+1/(dim(M1)[2]-1)}}}}entropia=-(matriz*log(matriz,base = 10))-((1-matriz)*log(1-matriz,base = 10))resultadoentropida<-sum(entropia,na.rm = 1)

########Código discretización por bines######

data(iris)x <- iris[,4]

hist(x, breaks=20, main="Data")def.par <- par(no.readonly = TRUE) # Guardarlayout(mat=rbind(1:2,3:4))

### Intervalo igualtable(discretize(x, categories=4))hist(x, breaks=20, main="Equal Interval length")abline(v=discretize(x, categories=4, onlycuts=TRUE),col="red")

### Igual frecuencua

table(discretize(x, "frequency", categories=4))

hist(x, breaks=20, main="Equal Frequency")abline(v=discretize(x, method="frequency", categories=4, onlycuts=TRUE),col="red")

### k-meanstable(discretize(x, "cluster", categories=4))hist(x, breaks=20, main="K-Means")abline(v=discretize(x, method="cluster", categories=4, onlycuts=TRUE),col="red")

### Número de intervalos elegido por el usuariotable(discretize(x, "fixed", categories = c(-Inf,.8,Inf)))

table(discretize(x, "fixed", categories = c(-Inf,.8, Inf) , labels=c("small", "large")))hist(x, breaks=20, main="Fixed")abline(v=discretize(x, method="fixed", categories = c(-Inf,.8,Inf), onlycuts=TRUE), col="red")par(def.par) # reset to default