]> git.donarmstrong.com Git - mothur.git/blob - corraxescommand.h
bbe87abcbd1eeccb677a4e59c58ce64cb961944c
[mothur.git] / corraxescommand.h
1 #ifndef CORRAXESCOMMAND_H
2 #define CORRAXESCOMMAND_H
3
4 /*
5  *  corraxescommand.h
6  *  Mothur
7  *
8  *  Created by westcott on 12/22/10.
9  *  Copyright 2010 Schloss Lab. All rights reserved.
10  *
11  */
12
13 #include "command.hpp"
14 #include "sharedrabundfloatvector.h"
15 #include "inputdata.h"
16
17
18 class CorrAxesCommand : public Command {
19 public:
20         CorrAxesCommand(string);
21         CorrAxesCommand();
22         ~CorrAxesCommand();
23         vector<string> getRequiredParameters();
24         vector<string> getValidParameters();
25         vector<string> getRequiredFiles();
26         map<string, vector<string> > getOutputFiles() { return outputTypes; }
27         int execute();
28         void help();
29         
30 private:
31         
32         
33         GlobalData* globaldata;
34         string axesfile, sharedfile, relabundfile, metadatafile, groups, label, inputFileName, outputDir, method;
35         bool abort, pickedGroups;
36         int numaxes;
37         set<string> names;
38         
39         vector<string> outputNames, Groups;
40         map<string, vector<string> > outputTypes;
41         vector<SharedRAbundFloatVector*> lookupFloat;
42         vector<string> metadataLabels;
43         
44         int getSharedFloat(InputData*);
45         int getMetadata();
46         int eliminateZeroOTUS(vector<SharedRAbundFloatVector*>&);
47         map<string, vector<float> > readAxes();
48         int calcPearson(map<string, vector<float> >&, ofstream&);
49         int calcSpearman(map<string, vector<float> >&, ofstream&);
50         int calcKendall(map<string, vector<float> >&, ofstream&);
51         
52 };
53
54
55 #endif
56
57