Example #1
0
  /*
   * Returns a new decision tree that was created by using only the features present in the chromosome.
   */
  public DecisionTreeClassifier getDecisionTree() {
    ArrayList<String> features = new ArrayList<String>();

    for (int i = 0; i < chromosome.length(); ++i)
      if (chromosome.charAt(i) == '1') features.add(FeatureSuperSet.get(i));

    DecisionTreeClassifier dtClassifier = new DecisionTreeClassifier(samples, features);
    SampleCollection training_samples =
        new SampleCollection(
            samples.getSamplesFilename(Filenames.TRAINING_SAMPLES_FILE),
            samples.getSamplesFilename(Filenames.FEATURES_FILE));
    training_samples.discretizeSamples(Constants.DiscretizerAlgorithms.EQUAL_BINNING);
    dtClassifier.setTestingSamples(training_samples);
    dtClassifier.setTrainingSamples(training_samples);

    return dtClassifier;
  }