]> git.donarmstrong.com Git - mothur.git/blobdiff - randomforest.hpp
changing command name classify.shared to classifyrf.shared
[mothur.git] / randomforest.hpp
old mode 100755 (executable)
new mode 100644 (file)
index 716d1a1..67d4372
@@ -6,19 +6,26 @@
 //  Copyright (c) 2012 Schloss Lab. All rights reserved.
 //
 
-#ifndef rrf_fs_prototype_randomforest_hpp
-#define rrf_fs_prototype_randomforest_hpp
+#ifndef RF_RANDOMFOREST_HPP
+#define RF_RANDOMFOREST_HPP
 
 #include "macros.h"
-#include "abstractrandomforest.hpp"
+#include "forest.h"
 #include "decisiontree.hpp"
 
-class RandomForest: public AbstractRandomForest {
+class RandomForest: public Forest {
     
 public:
     
-    // DONE
-    RandomForest(const vector <vector<int> > dataSet,const int numDecisionTrees, const string);
+    RandomForest(const vector <vector<int> > dataSet,
+                 const int numDecisionTrees,
+                 const string treeSplitCriterion,
+                 const bool doPruning,
+                 const float pruneAggressiveness,
+                 const bool discardHighErrorTrees,
+                 const float highErrorTreeDiscardThreshold,
+                 const string optimumFeatureSubsetSelectionCriteria,
+                 const float featureStandardDeviationThreshold);
     
     
     //NOTE:: if you are going to dynamically cast, aren't you undoing the advantage of abstraction. Why abstract at all?
@@ -36,6 +43,8 @@ public:
     int calcForrestVariableImportance(string);
     int populateDecisionTrees();
     int updateGlobalOutOfBagEstimates(DecisionTree* decisionTree);
+    int printConfusionMatrix(map<int, string> intToTreatmentMap);
+    int getMissclassifications(string, map<int, string> intToTreatmentMap, vector<string> names);
     
 private:
     MothurOut* m;