X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=pintail.cpp;h=7b99cab9e7eed714a0cefeee4b45ed8057429c6f;hp=04dfb0a76467ab6b030cfa60b8462dd7d30afd73;hb=ec92647e652017e0cd4ba0488a815094f88373b3;hpb=4f8291bc0a482c68dc739ef5aa7a311fc74f5f43 diff --git a/pintail.cpp b/pintail.cpp index 04dfb0a..7b99cab 100644 --- a/pintail.cpp +++ b/pintail.cpp @@ -41,13 +41,15 @@ void Pintail::print(ostream& out) { for (int i = 0; i < querySeqs.size(); i++) { int index = ceil(deviation[i]); - - if (index == 0) { index=1; } //is your DE value higher than the 95% string chimera; - if (DE[i] > quantiles[index-1][4]) { chimera = "Yes"; } - else { chimera = "No"; } + if (quantiles[index][4] == 0.0) { + chimera = "Your template does not include sequences that provide quantile values at distance " + toString(index); + }else { + if (DE[i] > quantiles[index][4]) { chimera = "Yes"; } + else { chimera = "No"; } + } out << querySeqs[i]->getName() << '\t' << "div: " << deviation[i] << "\tstDev: " << DE[i] << "\tchimera flag: " << chimera << endl; if (chimera == "Yes") { @@ -279,10 +281,19 @@ out7.close();/*/ ofstream out4, out5; string noOutliers, outliers; - noOutliers = getRootName(templateFile) + "pintail.quanNOOUTLIERS"; - outliers = getRootName(templateFile) + "pintail.quanYESOUTLIERS"; + if ((!filter) && (seqMask == "")) { + noOutliers = getRootName(templateFile) + "pintail.quan"; + }else if ((filter) && (seqMask == "")) { + noOutliers = getRootName(templateFile) + "pintail.filtered.quan"; + }else if ((!filter) && (seqMask != "")) { + noOutliers = getRootName(templateFile) + "pintail.masked.quan"; + }else if ((filter) && (seqMask != "")) { + noOutliers = getRootName(templateFile) + "pintail.filtered.masked.quan"; + } + + //outliers = getRootName(templateFile) + "pintail.quanYESOUTLIERS"; - openOutputFile(outliers, out4); + /*openOutputFile(outliers, out4); //adjust quantiles for (int i = 0; i < quantilesMembers.size(); i++) { @@ -321,7 +332,7 @@ out7.close();/*/ } - out4.close(); + out4.close();*/ decalc->removeObviousOutliers(quantilesMembers, templateSeqs.size());