]> git.donarmstrong.com Git - mothur.git/blobdiff - corraxescommand.cpp
changed normalize.shared and sub.sample commands to fix bug in normalize.shared and...
[mothur.git] / corraxescommand.cpp
index cd188b8a921a33aaac255852b5ab22d6008f605e..07c5707e0c195cf26596e5ef328af83994ebd031 100644 (file)
@@ -759,6 +759,7 @@ int CorrAxesCommand::eliminateZeroOTUS(vector<SharedRAbundFloatVector*>& thisloo
                }
                
                //for each bin
+               vector<string> newBinLabels;
                for (int i = 0; i < thislookup[0]->getNumBins(); i++) {
                        if (m->control_pressed) { for (int j = 0; j < newLookup.size(); j++) {  delete newLookup[j];  } return 0; }
                        
@@ -773,12 +774,19 @@ int CorrAxesCommand::eliminateZeroOTUS(vector<SharedRAbundFloatVector*>& thisloo
                                for (int j = 0; j < thislookup.size(); j++) {
                                        newLookup[j]->push_back(thislookup[j]->getAbundance(i), thislookup[j]->getGroup());
                                }
+                               
+                               //if there is a bin label use it otherwise make one
+                               string binLabel = "Otu" + (i+1);
+                               if (i < m->currentBinLabels.size()) {  binLabel = m->currentBinLabels[i]; }
+                               
+                               newBinLabels.push_back(binLabel);
                        }
                }
                
                for (int j = 0; j < thislookup.size(); j++) {  delete thislookup[j];  }
                
                thislookup = newLookup;
+               m->currentBinLabels = newBinLabels;
                
                return 0;
                
@@ -863,14 +871,14 @@ int CorrAxesCommand::getMetadata(){
                //read the first label, because it refers to the groups
                string columnLabel;
                iss >> columnLabel; m->gobble(iss); 
-
+               
                //save names of columns you are reading
                while (!iss.eof()) {
                        iss >> columnLabel; m->gobble(iss);
                        metadataLabels.push_back(columnLabel);
                }
                int count = metadataLabels.size();
-               
+                       
                //read rest of file
                while (!in.eof()) {
                        
@@ -879,7 +887,7 @@ int CorrAxesCommand::getMetadata(){
                        string group = "";
                        in >> group; m->gobble(in);
                        groupNames.push_back(group);
-                       
+                               
                        SharedRAbundFloatVector* tempLookup = new SharedRAbundFloatVector();
                        tempLookup->setGroup(group);
                        tempLookup->setLabel("1");
@@ -887,7 +895,6 @@ int CorrAxesCommand::getMetadata(){
                        for (int i = 0; i < count; i++) {
                                float temp = 0.0;
                                in >> temp; 
-                               
                                tempLookup->push_back(temp, group);
                        }