Fix mismatching number of columns in report
Quick fix the missing column header in the QualifyMissingIntervals report. Adding a QScript for the tool as well as a few minor updates to the GATKReportGatherer.
This commit is contained in:
parent
e9a93d23c3
commit
5d6421494b
|
|
@ -47,16 +47,15 @@
|
||||||
package org.broadinstitute.sting.gatk.walkers.diagnostics.missing;
|
package org.broadinstitute.sting.gatk.walkers.diagnostics.missing;
|
||||||
|
|
||||||
import org.broadinstitute.sting.commandline.Argument;
|
import org.broadinstitute.sting.commandline.Argument;
|
||||||
|
import org.broadinstitute.sting.commandline.Gather;
|
||||||
import org.broadinstitute.sting.commandline.Output;
|
import org.broadinstitute.sting.commandline.Output;
|
||||||
import org.broadinstitute.sting.gatk.CommandLineGATK;
|
import org.broadinstitute.sting.gatk.CommandLineGATK;
|
||||||
import org.broadinstitute.sting.gatk.contexts.AlignmentContext;
|
import org.broadinstitute.sting.gatk.contexts.AlignmentContext;
|
||||||
import org.broadinstitute.sting.gatk.contexts.ReferenceContext;
|
import org.broadinstitute.sting.gatk.contexts.ReferenceContext;
|
||||||
import org.broadinstitute.sting.gatk.refdata.RefMetaDataTracker;
|
import org.broadinstitute.sting.gatk.refdata.RefMetaDataTracker;
|
||||||
import org.broadinstitute.sting.gatk.report.GATKReport;
|
import org.broadinstitute.sting.gatk.report.GATKReport;
|
||||||
import org.broadinstitute.sting.gatk.walkers.By;
|
import org.broadinstitute.sting.gatk.report.GATKReportGatherer;
|
||||||
import org.broadinstitute.sting.gatk.walkers.DataSource;
|
import org.broadinstitute.sting.gatk.walkers.*;
|
||||||
import org.broadinstitute.sting.gatk.walkers.LocusWalker;
|
|
||||||
import org.broadinstitute.sting.gatk.walkers.NanoSchedulable;
|
|
||||||
import org.broadinstitute.sting.utils.GenomeLoc;
|
import org.broadinstitute.sting.utils.GenomeLoc;
|
||||||
import org.broadinstitute.sting.utils.GenomeLocParser;
|
import org.broadinstitute.sting.utils.GenomeLocParser;
|
||||||
import org.broadinstitute.sting.utils.GenomeLocSortedSet;
|
import org.broadinstitute.sting.utils.GenomeLocSortedSet;
|
||||||
|
|
@ -109,10 +108,12 @@ import java.util.List;
|
||||||
*/
|
*/
|
||||||
@DocumentedGATKFeature( groupName = HelpConstants.DOCS_CAT_QC, extraDocs = {CommandLineGATK.class} )
|
@DocumentedGATKFeature( groupName = HelpConstants.DOCS_CAT_QC, extraDocs = {CommandLineGATK.class} )
|
||||||
@By(DataSource.REFERENCE)
|
@By(DataSource.REFERENCE)
|
||||||
|
@PartitionBy(PartitionType.INTERVAL)
|
||||||
public final class QualifyMissingIntervals extends LocusWalker<Metrics, Metrics> implements NanoSchedulable {
|
public final class QualifyMissingIntervals extends LocusWalker<Metrics, Metrics> implements NanoSchedulable {
|
||||||
/**
|
/**
|
||||||
* A single GATKReport table with the qualifications on why the intervals passed by the -L argument were missing.
|
* A single GATKReport table with the qualifications on why the intervals passed by the -L argument were missing.
|
||||||
*/
|
*/
|
||||||
|
@Gather(GATKReportGatherer.class)
|
||||||
@Output
|
@Output
|
||||||
protected PrintStream out;
|
protected PrintStream out;
|
||||||
|
|
||||||
|
|
@ -194,7 +195,7 @@ public final class QualifyMissingIntervals extends LocusWalker<Metrics, Metrics>
|
||||||
if (cdsFile == null)
|
if (cdsFile == null)
|
||||||
cdsFile = targetsFile;
|
cdsFile = targetsFile;
|
||||||
|
|
||||||
simpleReport = GATKReport.newSimpleReport("QualifyMissingIntervals", "IN", "GC", "BQ", "MQ", "DP", "TP", "CD", "LN", "DS");
|
simpleReport = GATKReport.newSimpleReport("QualifyMissingIntervals", "IN", "GC", "BQ", "MQ", "DP", "TP", "TS", "CD", "LN", "DS");
|
||||||
final GenomeLocParser parser = getToolkit().getGenomeLocParser();
|
final GenomeLocParser parser = getToolkit().getGenomeLocParser();
|
||||||
target = new GenomeLocSortedSet(parser, IntervalUtils.intervalFileToList(parser, targetsFile));
|
target = new GenomeLocSortedSet(parser, IntervalUtils.intervalFileToList(parser, targetsFile));
|
||||||
cds = new GenomeLocSortedSet(parser, IntervalUtils.intervalFileToList(parser, cdsFile));
|
cds = new GenomeLocSortedSet(parser, IntervalUtils.intervalFileToList(parser, cdsFile));
|
||||||
|
|
|
||||||
|
|
@ -42,23 +42,21 @@ public class GATKReportGatherer extends Gatherer {
|
||||||
try {
|
try {
|
||||||
o = new PrintStream(output);
|
o = new PrintStream(output);
|
||||||
} catch (FileNotFoundException e) {
|
} catch (FileNotFoundException e) {
|
||||||
throw new UserException("File to be output by CoverageByRG Gather function was not found");
|
throw new UserException(String.format("File %s to be output by GATKReportGatherer function was not found", output));
|
||||||
}
|
}
|
||||||
|
|
||||||
GATKReport current = new GATKReport();
|
GATKReport current = new GATKReport();
|
||||||
boolean isFirst = true;
|
boolean isFirst = true;
|
||||||
for (File input : inputs) {
|
for (File input : inputs) {
|
||||||
|
|
||||||
// If the table is empty
|
|
||||||
if (isFirst) {
|
if (isFirst) {
|
||||||
current = new GATKReport(input);
|
current = new GATKReport(input);
|
||||||
isFirst = false;
|
isFirst = false;
|
||||||
} else {
|
} else {
|
||||||
GATKReport toAdd = new GATKReport(input);
|
current.concat(new GATKReport(input));
|
||||||
current.concat(toAdd);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
current.print(o);
|
current.print(o);
|
||||||
|
o.close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue