#include "command.hpp"
#include "inputdata.h"
-#include "readotu.h"
#include "sharedrabundvector.h"
-class GlobalData;
-
class MetaStatsCommand : public Command {
public:
MetaStatsCommand(string);
- ~MetaStatsCommand();
- int execute();
- void help();
+ MetaStatsCommand();
+ ~MetaStatsCommand() {}
+
+ vector<string> setParameters();
+ string getCommandName() { return "metastats"; }
+ string getCommandCategory() { return "OTU-Based Approaches"; }
+ string getHelpString();
+ string getCitation() { return "White JR, Nagarajan N, Pop M (2009). Statistical methods for detecting differentially abundant features in clinical metagenomic samples. PLoS Comput Biol 5: e1000352. \nhttp://www.mothur.org/wiki/Metastats"; }
+ string getDescription() { return "detects differentially abundant features in clinical metagenomic samples"; }
+
+ int execute();
+ void help() { m->mothurOut(getHelpString()); }
private:
- GlobalData* globaldata;
+ struct linePair {
+ int start;
+ int num;
+ linePair(int i, int j) : start(i), num(j) {}
+ };
+ vector<linePair> lines;
+
GroupMap* designMap;
- ReadOTUFile* read;
InputData* input;
vector<SharedRAbundVector*> lookup;
-
+
bool abort, allLines, pickedGroups;
set<string> labels; //holds labels to be used
- string groups, label, outputDir, inputDir, designfile;
- vector<string> Groups, outputNames;
- int iters, g;
+ string groups, label, outputDir, inputDir, designfile, sets, sharedfile;
+ vector<string> Groups, outputNames, Sets;
+ vector< vector<string> > namesOfGroupCombos;
+ int iters, processors;
float threshold;
int process(vector<SharedRAbundVector*>&);
- int eliminateZeroOTUS(vector<SharedRAbundVector*>&);
+ int driver(int, int, vector<SharedRAbundVector*>&);
};
#endif