X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=unifracweightedcommand.h;h=1c67c32f81afb2535943934ab82d66629bbc05b2;hb=79ca496859f48f1c38803c0f7c603faac348fe4c;hp=2e2ba3a64f11bf35f7b6ff612bd8b32e6bdd644a;hpb=e150b0b0664caec517485ee6d69dcdade6dcae77;p=mothur.git diff --git a/unifracweightedcommand.h b/unifracweightedcommand.h index 2e2ba3a..1c67c32 100644 --- a/unifracweightedcommand.h +++ b/unifracweightedcommand.h @@ -12,7 +12,7 @@ #include "command.hpp" #include "weighted.h" -#include "treemap.h" +#include "counttable.h" #include "progress.hpp" #include "sharedutilities.h" #include "fileoutput.h" @@ -28,9 +28,12 @@ class UnifracWeightedCommand : public Command { vector setParameters(); string getCommandName() { return "unifrac.weighted"; } string getCommandCategory() { return "Hypothesis Testing"; } - string getHelpString(); - string getCitation() { return "http://www.mothur.org/wiki/Unifrac.weighted"; } - + + string getHelpString(); + string getOutputPattern(string); + string getCitation() { return "Lozupone CA, Hamady M, Kelley ST, Knight R (2007). Quantitative and qualitative beta diversity measures lead to different insights into factors that structure microbial communities. Appl Environ Microbiol 73: 1576-85. \nhttp://www.mothur.org/wiki/Unifrac.weighted"; } + string getDescription() { return "generic tests that describes whether two or more communities have the same structure"; } + int execute(); void help() { m->mothurOut(getHelpString()); } @@ -41,30 +44,24 @@ class UnifracWeightedCommand : public Command { linePair(int i, int j) : start(i), num(j) {} }; vector lines; - - ReadTree* read; - SharedUtil* util; + CountTable* ct; FileOutput* output; vector T; //user trees vector utreeScores; //user tree unweighted scores vector WScoreSig; //tree weighted score signifigance when compared to random trees - percentage of random trees with that score or lower. vector groupComb; // AB. AC, BC... - TreeMap* tmap; - Weighted* weighted; string sumFile, outputDir; int iters, numGroups, numComp, counter; - EstOutput userData; //weighted score info for user tree - EstOutput randomData; //weighted score info for random trees vector< vector > rScores; //vector each group comb has an entry vector< vector > uScores; //vector each group comb has an entry vector< map > rScoreFreq; //map -vector entry for each combination. vector< map > rCumul; //map -vector entry for each c map validScores; //map contains scores from random - bool abort, phylip, random, includeRoot; - string groups, itersString, outputForm, treefile, groupfile, namefile; + bool abort, phylip, random, includeRoot, subsample, consensus; + string groups, itersString, outputForm, treefile, groupfile, namefile, countfile; vector Groups, outputNames; //holds groups to be used - int processors, numUniquesInName; + int processors, subsampleSize, subsampleIters; ofstream outSum; map nameMap; @@ -76,7 +73,10 @@ class UnifracWeightedCommand : public Command { void calculateFreqsCumuls(); int createProcesses(Tree*, vector< vector >, vector< vector >&); int driver(Tree*, vector< vector >, int, int, vector< vector >&); - int readNamesFile(); + int runRandomCalcs(Tree*, vector); + vector buildTrees(vector< vector >&, int, CountTable&); + int getConsensusTrees(vector< vector >&, int); + int getAverageSTDMatrices(vector< vector >&, int); };