X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=lefsecommand.h;h=c9c4092e99f6bb402145f2e3432753ce642c7c6e;hp=095ad48da125fbfe83f30aaff41eb62ec18c610f;hb=b25ede2ad307ae76f8a610443e0ec3ec69621ce7;hpb=b8ff3bca0560a53832723f4621fcddef7ec4e499 diff --git a/lefsecommand.h b/lefsecommand.h index 095ad48..c9c4092 100644 --- a/lefsecommand.h +++ b/lefsecommand.h @@ -12,7 +12,7 @@ #include "command.hpp" /* - Columns = groups, rows are OTUs, class = design?? + Columns = groups, rows are OTUs, class = design From http://huttenhower.sph.harvard.edu/galaxy/root?tool_id=lefse_upload Input data consist of a collection of m samples (columns) each made up of n numerical features (rows, typically normalized per-sample, red representing high values and green low). These samples are labeled with a class (taking two or more possible values) that represents the main biological hypothesis under investigation; they may also have one or more subclass labels reflecting within-class groupings. @@ -22,4 +22,47 @@ Step 3: the resulting subset of vectors is used to build a Linear Discriminant Analysis model from which the relative difference among classes is used to rank the features. The final output thus consists of a list of features that are discriminative with respect to the classes, consistent with the subclass grouping within classes, and ranked according to the effect size with which they differentiate classes. */ + +#include "command.hpp" +#include "inputdata.h" +#include "designmap.h" + +/**************************************************************************************************/ + +class LefseCommand : public Command { +public: + LefseCommand(string); + LefseCommand(); + ~LefseCommand(){} + + vector setParameters(); + string getCommandName() { return "lefse"; } + string getCommandCategory() { return "OTU-Based Approaches"; } + + string getOutputPattern(string); + string getHelpString(); + string getCitation() { return "http://www.mothur.org/wiki/Lefse"; } + string getDescription() { return "brief description"; } + + int execute(); + void help() { m->mothurOut(getHelpString()); } + +private: + bool abort, allLines; + string outputDir, sharedfile, designfile, mclass, subclass, classes; + vector outputNames; + set labels; + float anovaAlpha, wilcoxonAlpha; + + int process(vector&, DesignMap&); + vector runKruskalWallis(vector&, DesignMap&); + vector runWilcoxon(vector&, DesignMap&, vector); + +}; + +/**************************************************************************************************/ + + + + #endif /* defined(__Mothur__lefsecommand__) */