pessoal, criei alguns metodos e um somatorio mas o resultado ta saindo inesperado.
public double log2(double x){
double resultado;
resultado = Math.log10(x) / Math.log10(2.00);
return resultado;
}
public double entropia(){
double entropia=0;
double[] temp = probabilidades();
for(int i=0; i<27;i++){
entropia = entropia + (temp[i]*log2(1/temp[i]));
System.out.println(entropia);
}
return entropia;
}
run:
0.26855508874019846
0.33499365063794573
0.40143221253569294
0.5531990232073
0.865852830157217
0.9787299539527116
1.045168515850459
1.261264920594827
1.477361325339195
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
estou usando o netbeans 6.5
