示例#1
0
  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;
  }
示例#2
0
  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);
  }
示例#3
0
  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;
  }