X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=kruskalwalliscommand.h;h=feefebd58fdb5650f41e9642a63e6dc68d011a24;hb=1a968f34ae2d2680eaf189a197d1a21b8dfd6c03;hp=3b5fdcea8975ecc774116fc4f8a824d0db8e64aa;hpb=847bb54463913763210bd5974bc1b7830012e3ea;p=mothur.git diff --git a/kruskalwalliscommand.h b/kruskalwalliscommand.h index 3b5fdce..feefebd 100644 --- a/kruskalwalliscommand.h +++ b/kruskalwalliscommand.h @@ -9,7 +9,8 @@ #define KRUSKALWALLISCOMMAND_H #include "command.hpp" - +#include "inputdata.h" +#include "sharedrabundvector.h" class KruskalWallisCommand : public Command { @@ -23,34 +24,39 @@ public: vector setParameters(); string getCommandName() { return "kruskalwallis"; } string getCommandCategory() { return "Hypothesis Testing"; } - string getOutputFileNameTag(string, string); + string getOutputPattern(string); string getHelpString(); string getCitation() { return "http://www.mothur.org/wiki/kruskalwallis"; } string getDescription() { return "Non-parametric method for testing whether samples originate from the same distribution."; } struct groupRank { - sstring group; + string group; double value; double rank; }; int execute(); void help() { m->mothurOut(getHelpString()); } - void assignRank(vector); + void assignRank(vector&); + void assignValue(vector&); + private: - string outputDir; + string outputDir, sharedfile, groups; + bool abort; + set labels; + vector outputNames, Groups; vector counts; vector rankSums; vector rankMeans; - bool comparevalue(const groupRank &a, const groupRank &b) { return a.value < b.value; } - bool equalvalue(const groupRank &a, const groupRank &b) { return a.value == b.value; } - bool comparerank(const groupRank &a, const groupRank &b) { return a.rank < b.rank; } - bool equalrank(const groupRank &a, const groupRank &b) { return a.rank == b.rank; } - bool equalgroup(const groupRank &a, const groupRank &b) { return a.group == b.group; } + static bool comparevalue(const groupRank &a, const groupRank &b) { return a.value < b.value; } + static bool equalvalue(const groupRank &a, const groupRank &b) { return a.value == b.value; } + static bool comparerank(const groupRank &a, const groupRank &b) { return a.rank < b.rank; } + static bool equalrank(const groupRank &a, const groupRank &b) { return a.rank == b.rank; } + static bool equalgroup(const groupRank &a, const groupRank &b) { return a.group == b.group; } };