]> git.donarmstrong.com Git - mothur.git/blob - anosimcommand.h
added load.logfile command. changed summary.single output for subsample=t.
[mothur.git] / anosimcommand.h
1 #ifndef ANOSIMCOMMAND_H
2 #define ANOSIMCOMMAND_H
3
4 /*
5  *  anosimcommand.h
6  *  mothur
7  *
8  *  Created by westcott on 2/14/11.
9  *  Copyright 2011 Schloss Lab. All rights reserved.
10  *
11  */
12
13
14 #include "command.hpp"
15
16 class GroupMap;
17
18 class AnosimCommand : public Command {
19         
20 public:
21         AnosimCommand(string);
22         AnosimCommand();
23         ~AnosimCommand(){}
24         
25         vector<string> setParameters();
26         string getCommandName()                 { return "anosim";                                      }
27         string getCommandCategory()             { return "Hypothesis Testing";          }
28     string getOutputFileNameTag(string, string);
29         string getHelpString(); 
30         string getCitation() { return "Clarke, K. R. (1993). Non-parametric multivariate analysis of changes in community structure. _Australian Journal of Ecology_ 18, 117-143.\nhttp://www.mothur.org/wiki/Anosim"; }
31         string getDescription()         { return "analysis of similarity"; }
32         
33         int execute();
34         void help() { m->mothurOut(getHelpString()); }
35         
36 private:
37         bool abort;
38         GroupMap* designMap;
39         string outputDir, inputDir, designFileName, phylipFileName;
40         
41         vector<vector<double> > convertToRanks(vector<vector<double> >);
42         double calcR(vector<vector<double> >, map<string, vector<int> >);
43         map<string, vector<int> > getRandomizedGroups(map<string, vector<int> >);
44         double runANOSIM(ofstream&, vector<vector<double> >, map<string, vector<int> >, double);
45         
46         vector< vector<double> > distanceMatrix;
47         vector<string> outputNames;
48         int iters;
49         double experimentwiseAlpha;
50         vector< vector<string> > namesOfGroupCombos;
51         
52         
53 };
54
55 #endif
56
57
58