public Instance readInstanceDense()

in samoa-instances/src/main/java/org/apache/samoa/instances/ArffLoader.java [166:207]


  public Instance readInstanceDense() {
    Instance instance = newDenseInstance(this.instanceInformation.numAttributes());
    //System.out.println(this.instanceInformation.numAttributes());
    int numAttribute = 0;
    try {
      while (numAttribute == 0 && streamTokenizer.ttype != StreamTokenizer.TT_EOF) {
        //For each line
        while (streamTokenizer.ttype != StreamTokenizer.TT_EOL
                && streamTokenizer.ttype != StreamTokenizer.TT_EOF) {
          //For each item
          if (streamTokenizer.ttype == StreamTokenizer.TT_NUMBER) {
            //System.out.println(streamTokenizer.nval + "Num ");
            instance.setValue(numAttribute, streamTokenizer.nval);//this.setValue(instance, numAttribute, streamTokenizer.nval, true);
            ++numAttribute;

          } else if (streamTokenizer.sval != null && (streamTokenizer.ttype == StreamTokenizer.TT_WORD
                  || streamTokenizer.ttype == 34 || streamTokenizer.ttype == 39)) {
            //System.out.println(streamTokenizer.sval + "Str");
            boolean isNumeric = this.auxAttributes.get(numAttribute).isNumeric();
            double value;
            if ("?".equals(streamTokenizer.sval)) {
              value = Double.NaN; //Utils.missingValue();
            } else if (isNumeric == true) {
              value = Double.valueOf(streamTokenizer.sval).doubleValue();
            } else {
              value = this.auxAttributes.get(numAttribute).indexOfValue(streamTokenizer.sval);
            }

            instance.setValue(numAttribute, value);//this.setValue(instance, numAttribute, value, isNumeric);
            ++numAttribute;
          }
          streamTokenizer.nextToken();
        }
        streamTokenizer.nextToken();
        //System.out.println("EOL");
      }

    } catch (IOException ex) {
      Logger.getLogger(ArffLoader.class.getName()).log(Level.SEVERE, null, ex);
    }
    return (numAttribute > 0) ? instance : null;
  }