]> git.donarmstrong.com Git - mothur.git/blobdiff - corraxescommand.h
Revert to previous commit
[mothur.git] / corraxescommand.h
diff --git a/corraxescommand.h b/corraxescommand.h
new file mode 100644 (file)
index 0000000..2aa7ae0
--- /dev/null
@@ -0,0 +1,57 @@
+#ifndef CORRAXESCOMMAND_H
+#define CORRAXESCOMMAND_H
+
+/*
+ *  corraxescommand.h
+ *  Mothur
+ *
+ *  Created by westcott on 12/22/10.
+ *  Copyright 2010 Schloss Lab. All rights reserved.
+ *
+ */
+
+#include "command.hpp"
+#include "sharedrabundfloatvector.h"
+#include "inputdata.h"
+
+
+class CorrAxesCommand : public Command {
+public:
+       CorrAxesCommand(string);
+       CorrAxesCommand();
+       ~CorrAxesCommand(){}
+       
+       vector<string> setParameters();
+       string getCommandName()                 { return "corr.axes";                           }
+       string getCommandCategory()             { return "Hypothesis Testing";          }
+       string getHelpString(); 
+       string getCitation() { return "McCune B, Grace JB, Urban DL (2002). Analysis of ecological communities. MjM Software Design: Gleneden Beach, OR. \nLegendre P, Legendre L (1998). Numerical Ecology. Elsevier: New York. \nhttp://www.mothur.org/wiki/Corr.axes"; }
+       string getDescription()         { return "calculate the correlation coefficient for each column in a shared/relabund file to the axes displayed in a pcoa file"; }
+       
+       int execute();
+       void help() { m->mothurOut(getHelpString()); }  
+private:
+
+       string axesfile, sharedfile, relabundfile, metadatafile, groups, label, inputFileName, outputDir, method;
+       bool abort, pickedGroups;
+       int numaxes;
+       set<string> names;
+       
+       vector<string> outputNames, Groups;
+       vector<SharedRAbundFloatVector*> lookupFloat;
+       vector<string> metadataLabels;
+       
+       int getSharedFloat(InputData*);
+       int getMetadata();
+       int eliminateZeroOTUS(vector<SharedRAbundFloatVector*>&);
+       map<string, vector<float> > readAxes();
+       int calcPearson(map<string, vector<float> >&, ofstream&);
+       int calcSpearman(map<string, vector<float> >&, ofstream&);
+       int calcKendall(map<string, vector<float> >&, ofstream&);
+       
+};
+
+
+#endif
+
+