Example usage for weka.core Instance setMissing

List of usage examples for weka.core Instance setMissing

Introduction

In this page you can find the example usage for weka.core Instance setMissing.

Prototype

public void setMissing(Attribute att);

Source Link

Document

Sets a specific value to be "missing".

Usage

From source file:wekimini.DataManager.java

public void setOutputMissingForAll(int outputNum) {
    for (int i = 0; i < allInstances.numInstances(); i++) {
        Instance in = allInstances.instance(i);
        in.setMissing(numMetaData + numInputs + outputNum);
    }/*from ww  w  .  ja v  a  2s .co m*/
    setNumExamplesPerOutput(outputNum, 0);
}

From source file:wekimini.InputGenerator.java

public void addToStorage(double[] inputs, double[] outputs, boolean[] recordingMask, int recordingRound) {

    int thisId = nextID;
    nextID++;// w  w  w  .j a v  a 2 s.c  o m

    double myVals[] = new double[numMetaData + numInputs + numOutputs];
    myVals[idIndex] = thisId;
    myVals[recordingRoundIndex] = recordingRound;

    Date now = new Date();
    //myVals[timestampIndex] = Double.parseDouble(dateFormat.format(now)); //Error: This gives us scientific notation!

    String pretty = prettyDateFormat.format(now);
    try {
        myVals[timestampIndex] = storedInputs.attribute(timestampIndex).parseDate(pretty);
        //myVals[timestampIndex] =
    } catch (ParseException ex) {
        myVals[timestampIndex] = 0;
        Logger.getLogger(DataManager.class.getName()).log(Level.SEVERE, null, ex);
    }

    /*for (int i = 0; i < numInputs; i++) {
     myVals[numMetaData + i] = featureVals[i];
     } */
    System.arraycopy(inputs, 0, myVals, numMetaData, inputs.length); //TODO DOUBLECHECK

    /*for (int i = 0; i < numParams; i++) {
     if (isParamDiscrete[i] && (paramVals[i] < 0 || paramVals[i] >= numParamValues[i])) {
     throw new IllegalArgumentException("Invalid value for this discrete parameter");
     }
            
     myVals[numMetaData + numFeatures + i] = paramVals[i];
     } */
    System.arraycopy(outputs, 0, myVals, numMetaData + numInputs, outputs.length);

    Instance in = new Instance(1.0, myVals);
    for (int i = 0; i < recordingMask.length; i++) {
        if (!recordingMask[i]) {
            in.setMissing(numMetaData + numInputs + i);
        } else {
            w.getDataManager().setNumExamplesPerOutput(i, w.getDataManager().getNumExamplesPerOutput(i) + 1);
            // outputInstanceCounts[i]++;
        }
    }
    in.setDataset(storedInputs);
    storedInputs.add(in);
    //setHasInstances(true);
    //fireStateChanged();
    //throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}

From source file:wekimini.InputGenerator.java

public void addToTraining(double[] inputs, double[] outputs, boolean[] recordingMask, int recordingRound) {

    int thisId = nextID;
    nextID++;//from ww w.  j  a  v a 2s. c o  m

    double myVals[] = new double[numMetaData + numInputs + numOutputs];
    myVals[idIndex] = thisId;
    myVals[recordingRoundIndex] = recordingRound;

    Date now = new Date();
    //myVals[timestampIndex] = Double.parseDouble(dateFormat.format(now)); //Error: This gives us scientific notation!

    String pretty = prettyDateFormat.format(now);
    try {
        myVals[timestampIndex] = trainingInputs.attribute(timestampIndex).parseDate(pretty);
        //myVals[timestampIndex] =
    } catch (ParseException ex) {
        myVals[timestampIndex] = 0;
        Logger.getLogger(DataManager.class.getName()).log(Level.SEVERE, null, ex);
    }

    /*for (int i = 0; i < numInputs; i++) {
     myVals[numMetaData + i] = featureVals[i];
     } */
    System.arraycopy(inputs, 0, myVals, numMetaData, inputs.length); //TODO DOUBLECHECK

    /*for (int i = 0; i < numParams; i++) {
     if (isParamDiscrete[i] && (paramVals[i] < 0 || paramVals[i] >= numParamValues[i])) {
     throw new IllegalArgumentException("Invalid value for this discrete parameter");
     }
            
     myVals[numMetaData + numFeatures + i] = paramVals[i];
     } */
    System.arraycopy(outputs, 0, myVals, numMetaData + numInputs, outputs.length);

    Instance in = new Instance(1.0, myVals);
    for (int i = 0; i < recordingMask.length; i++) {
        if (!recordingMask[i]) {
            in.setMissing(numMetaData + numInputs + i);
        } else {
            w.getDataManager().setNumExamplesPerOutput(i, w.getDataManager().getNumExamplesPerOutput(i) + 1);
            // outputInstanceCounts[i]++;
        }
    }
    in.setDataset(trainingInputs);
    trainingInputs.add(in);
    //setHasInstances(true);
    //fireStateChanged();
    //throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}

From source file:wekimini.OutputGenerator.java

public void addToStorage(double[] inputs, double[] outputs, boolean[] recordingMask, int recordingRound) {

    int thisId = nextID;
    nextID++;/*  www.j a v  a 2  s .  c  om*/

    double myVals[] = new double[numMetaData + numInputs + numOutputs];
    myVals[idIndex] = thisId;
    myVals[recordingRoundIndex] = recordingRound;

    Date now = new Date();
    //myVals[timestampIndex] = Double.parseDouble(dateFormat.format(now)); //Error: This gives us scientific notation!

    String pretty = prettyDateFormat.format(now);
    try {
        myVals[timestampIndex] = storedOutputs.attribute(timestampIndex).parseDate(pretty);
        //myVals[timestampIndex] =
    } catch (ParseException ex) {
        myVals[timestampIndex] = 0;
        Logger.getLogger(DataManager.class.getName()).log(Level.SEVERE, null, ex);
    }

    /*for (int i = 0; i < numInputs; i++) {
     myVals[numMetaData + i] = featureVals[i];
     } */
    System.arraycopy(inputs, 0, myVals, numMetaData, inputs.length); //TODO DOUBLECHECK

    /*for (int i = 0; i < numParams; i++) {
     if (isParamDiscrete[i] && (paramVals[i] < 0 || paramVals[i] >= numParamValues[i])) {
     throw new IllegalArgumentException("Invalid value for this discrete parameter");
     }
            
     myVals[numMetaData + numFeatures + i] = paramVals[i];
     } */
    System.arraycopy(outputs, 0, myVals, numMetaData + numInputs, outputs.length);

    Instance in = new Instance(1.0, myVals);
    for (int i = 0; i < recordingMask.length; i++) {
        if (!recordingMask[i]) {
            in.setMissing(numMetaData + numInputs + i);
        } else {
            w.getDataManager().setNumExamplesPerOutput(i, w.getDataManager().getNumExamplesPerOutput(i) + 1);
            // outputInstanceCounts[i]++;
        }
    }
    in.setDataset(storedOutputs);
    storedOutputs.add(in);
    //setHasInstances(true);
    //fireStateChanged();
    //throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}

From source file:wekimini.OutputGenerator.java

public void addToTrainingOutputs(double[] inputs, double[] outputs, boolean[] recordingMask,
        int recordingRound) {

    int thisId = nextID;
    nextID++;//from  w  w w  . j a v a  2 s .c  om

    double myVals[] = new double[numMetaData + numInputs + numOutputs];
    myVals[idIndex] = thisId;
    myVals[recordingRoundIndex] = recordingRound;

    Date now = new Date();
    //myVals[timestampIndex] = Double.parseDouble(dateFormat.format(now)); //Error: This gives us scientific notation!

    String pretty = prettyDateFormat.format(now);
    try {
        myVals[timestampIndex] = trainingOutputs.attribute(timestampIndex).parseDate(pretty);
        //myVals[timestampIndex] =
    } catch (ParseException ex) {
        myVals[timestampIndex] = 0;
        Logger.getLogger(DataManager.class.getName()).log(Level.SEVERE, null, ex);
    }

    /*for (int i = 0; i < numInputs; i++) {
     myVals[numMetaData + i] = featureVals[i];
     } */
    System.arraycopy(inputs, 0, myVals, numMetaData, inputs.length); //TODO DOUBLECHECK

    /*for (int i = 0; i < numParams; i++) {
     if (isParamDiscrete[i] && (paramVals[i] < 0 || paramVals[i] >= numParamValues[i])) {
     throw new IllegalArgumentException("Invalid value for this discrete parameter");
     }
            
     myVals[numMetaData + numFeatures + i] = paramVals[i];
     } */
    System.arraycopy(outputs, 0, myVals, numMetaData + numInputs, outputs.length);

    Instance in = new Instance(1.0, myVals);
    for (int i = 0; i < recordingMask.length; i++) {
        if (!recordingMask[i]) {
            in.setMissing(numMetaData + numInputs + i);
        } else {
            w.getDataManager().setNumExamplesPerOutput(i, w.getDataManager().getNumExamplesPerOutput(i) + 1);
            // outputInstanceCounts[i]++;
        }
    }
    in.setDataset(trainingOutputs);
    trainingOutputs.add(in);
    //setHasInstances(true);
    //fireStateChanged();
    //throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}