private double computeEAipAjq(int data[][], int classData[], Condition cond, int clase) { int i; double tmp; double EAipAjq; boolean hecho; tmp = 0; for (i = 0; i < classData.length; i++) { if (classData[i] == clase) { hecho = true; if (data[i][cond.getAttribute()] == -1) { hecho = false; } if (hecho) { tmp++; } } } EAipAjq = tmp; tmp = 0; for (i = 0; i < data.length; i++) { hecho = true; if (data[i][cond.getAttribute()] != cond.getValue()) { hecho = false; } if (hecho) { tmp++; } } EAipAjq += tmp; tmp = 0; for (i = 0; i < data.length; i++) { hecho = true; if (data[i][cond.getAttribute()] == -1) { hecho = false; } if (hecho) { tmp++; } } return EAipAjq / tmp; }
private double computeMaximumLikelohoodEstimate( int data[][], int classData[], Condition cond, int clase) { int i; double tmp1, tmp2, tmp3; boolean hecho; tmp1 = 0; for (i = 0; i < classData.length; i++) { if (classData[i] == clase) { hecho = true; if (data[i][cond.getAttribute()] == -1) { hecho = false; } if (hecho) { tmp1++; } } } tmp2 = 0; for (i = 0; i < data.length; i++) { hecho = true; if (data[i][cond.getAttribute()] != cond.getValue()) { hecho = false; } if (hecho) { tmp2++; } } tmp3 = 0; for (i = 0; i < data.length; i++) { hecho = true; if (data[i][cond.getAttribute()] == -1) { hecho = false; } if (hecho) { tmp3++; } } return (1 - tmp1 / tmp3) * (1 - tmp2 / tmp3); }
private int computeCountAipAjq(int data[][], int classData[], Condition cond, int clase) { int i; boolean entra; int cont = 0; for (i = 0; i < data.length; i++) { if (classData[i] == clase) { entra = true; if (data[i][cond.getAttribute()] != cond.getValue()) { entra = false; } if (entra) { cont++; } } } return cont; }