当前位置: 首页>>代码示例>>Java>>正文


Java IntervalList.add方法代码示例

本文整理汇总了Java中htsjdk.samtools.util.IntervalList.add方法的典型用法代码示例。如果您正苦于以下问题:Java IntervalList.add方法的具体用法?Java IntervalList.add怎么用?Java IntervalList.add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在htsjdk.samtools.util.IntervalList的用法示例。


在下文中一共展示了IntervalList.add方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: inputGetTumorHetPulldown

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
@DataProvider(name = "inputGetTumorHetPulldown")
public Object[][] inputGetTumorHetPulldown() {
    final Pulldown tumorHetPulldown = new Pulldown(normalHeader);
    tumorHetPulldown.add(new AllelicCount(new SimpleInterval("1", 11522, 11522), 7, 4));
    tumorHetPulldown.add(new AllelicCount(new SimpleInterval("1", 12098, 12098), 8, 6));
    tumorHetPulldown.add(new AllelicCount(new SimpleInterval("1", 14630, 14630), 9, 8));
    tumorHetPulldown.add(new AllelicCount(new SimpleInterval("2", 14689, 14689), 6, 9));
    tumorHetPulldown.add(new AllelicCount(new SimpleInterval("2", 14982, 14982), 6, 5));

    final IntervalList normalHetIntervals = new IntervalList(tumorHeader);
    normalHetIntervals.add(new Interval("1", 11522, 11522));
    normalHetIntervals.add(new Interval("1", 12098, 12098));
    normalHetIntervals.add(new Interval("1", 14630, 14630));
    normalHetIntervals.add(new Interval("2", 14689, 14689));
    normalHetIntervals.add(new Interval("2", 14982, 14982));

    return new Object[][]{
            {normalHetIntervals, tumorHetPulldown}
    };
}
 
开发者ID:broadinstitute,项目名称:gatk-protected,代码行数:21,代码来源:HetPulldownCalculatorUnitTest.java

示例2: calculateStatistics

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
/** Calculates a few statistics about the bait design that can then be output. */
void calculateStatistics(final IntervalList targets, final IntervalList baits) {
    this.TARGET_TERRITORY = (int) targets.getUniqueBaseCount();
    this.TARGET_COUNT = targets.size();
    this.BAIT_TERRITORY = (int) baits.getUniqueBaseCount();
    this.BAIT_COUNT = baits.size();
    this.DESIGN_EFFICIENCY = this.TARGET_TERRITORY / (double) this.BAIT_TERRITORY;

    // Figure out the intersection between all targets and all baits
    final IntervalList tmp = new IntervalList(targets.getHeader());
    final OverlapDetector<Interval> detector = new OverlapDetector<Interval>(0, 0);
    detector.addAll(baits.getIntervals(), baits.getIntervals());

    for (final Interval target : targets) {
        final Collection<Interval> overlaps = detector.getOverlaps(target);

        if (overlaps.isEmpty()) {
            this.ZERO_BAIT_TARGETS++;
        } else {
            for (final Interval i : overlaps) tmp.add(target.intersect(i));
        }
    }

    tmp.uniqued();
    this.BAIT_TARGET_TERRITORY_INTERSECTION = (int) tmp.getBaseCount();
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:27,代码来源:BaitDesigner.java

示例3: scatterFixedIntervals

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
/**
 * Splits an interval list into multiple files.
 * @param fileHeader The sam file header.
 * @param splits Pre-divided genome locs returned by splitFixedIntervals.
 * @param scatterParts The output interval lists to write to.
 */
public static void scatterFixedIntervals(final SAMFileHeader fileHeader, final List<List<GenomeLoc>> splits, final List<File> scatterParts) {
    Utils.nonNull(fileHeader, "fileHeader is null");
    Utils.nonNull(splits, "splits is null");
    Utils.nonNull(scatterParts, "scatterParts is null");
    Utils.containsNoNull(splits, "null split loc");

    if (splits.size() != scatterParts.size()) {
        throw new CommandLineException.BadArgumentValue("splits", String.format("Split points %d does not equal the number of scatter parts %d.", splits.size(), scatterParts.size()));
    }

    int fileIndex = 0;
    int locIndex = 1;
    for (final List<GenomeLoc> split : splits) {
        final IntervalList intervalList = new IntervalList(fileHeader);
        for (final GenomeLoc loc : split) {
            intervalList.add(toInterval(loc, locIndex++));
        }
        intervalList.write(scatterParts.get(fileIndex++));
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:27,代码来源:IntervalUtils.java

示例4: testLoadIntervalsInvalidPicardIntervalHandling

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
@Test(expectedExceptions=UserException.MalformedFile.class, dataProvider="invalidIntervalTestData")
public void testLoadIntervalsInvalidPicardIntervalHandling(GenomeLocParser genomeLocParser,
                                              String contig, int intervalStart, int intervalEnd ) throws Exception {

    SAMFileHeader picardFileHeader = new SAMFileHeader();
    picardFileHeader.addSequence(genomeLocParser.getContigInfo("1"));
    // Intentionally add an extra contig not in our genomeLocParser's sequence dictionary
    // so that we can add intervals to the Picard interval file for contigs not in our dictionary
    picardFileHeader.addSequence(new SAMSequenceRecord("2", 100000));

    IntervalList picardIntervals = new IntervalList(picardFileHeader);
    picardIntervals.add(new Interval(contig, intervalStart, intervalEnd, true, "dummyname"));

    File picardIntervalFile = createTempFile("testLoadIntervalsInvalidPicardIntervalHandling", ".intervals");
    picardIntervals.write(picardIntervalFile);

    List<String> intervalArgs = new ArrayList<>(1);
    intervalArgs.add(picardIntervalFile.getAbsolutePath());

    // loadIntervals() will validate all intervals against the sequence dictionary in our genomeLocParser,
    // and should throw for all intervals in our invalidIntervalTestData set
    IntervalUtils.loadIntervals(intervalArgs, IntervalSetRule.UNION, IntervalMergingRule.ALL, 0, genomeLocParser);
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:24,代码来源:IntervalUtilsUnitTest.java

示例5: testIntervalFileToListNegativeOneLength

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
@Test(dataProvider="negativeOneLengthIntervalTestData")
public void testIntervalFileToListNegativeOneLength(GenomeLocParser genomeLocParser,
                                              String contig, int intervalStart, int intervalEnd ) throws Exception {

    final SAMFileHeader picardFileHeader = new SAMFileHeader();
    picardFileHeader.addSequence(genomeLocParser.getContigInfo("1"));

    final IntervalList picardIntervals = new IntervalList(picardFileHeader);
    // Need one good interval or else a UserException.MalformedFile( is thrown if no intervals
    picardIntervals.add(new Interval(contig, 1, 2, true, "dummyname0"));
    picardIntervals.add(new Interval(contig, intervalStart, intervalEnd, true, "dummyname1"));

    final File picardIntervalFile = createTempFile("testIntervalFileToListNegativeOneLength", ".intervals");
    picardIntervals.write(picardIntervalFile);

    IntervalUtils.intervalFileToList(genomeLocParser, picardIntervalFile.getAbsolutePath());
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:18,代码来源:IntervalUtilsUnitTest.java

示例6: testIntervalFileToListInvalidPicardIntervalHandling

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
@Test(expectedExceptions=UserException.CouldNotReadInputFile.class, dataProvider="invalidIntervalTestData")
public void testIntervalFileToListInvalidPicardIntervalHandling(GenomeLocParser genomeLocParser,
                                   String contig, int intervalStart, int intervalEnd ) throws Exception {

    final SAMFileHeader picardFileHeader = new SAMFileHeader();
    picardFileHeader.addSequence(genomeLocParser.getContigInfo("1"));
    picardFileHeader.addSequence(new SAMSequenceRecord("2", 100000));

    final IntervalList picardIntervals = new IntervalList(picardFileHeader);
    picardIntervals.add(new Interval(contig, intervalStart, intervalEnd, true, "dummyname"));

    final File picardIntervalFile = createTempFile("testIntervalFileToListInvalidPicardIntervalHandling", ".intervals");
    picardIntervals.write(picardIntervalFile);

    // loadIntervals() will validate all intervals against the sequence dictionary in our genomeLocParser,
    // and should throw for all intervals in our invalidIntervalTestData set
    IntervalUtils.intervalFileToList(genomeLocParser, picardIntervalFile.getAbsolutePath());
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:19,代码来源:IntervalUtilsUnitTest.java

示例7: canFilterFromIntFlag

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
public void canFilterFromIntFlag(){
	
	int f_incl= 131;
	int F_excl= 72;
	String chrom= "chrY";
	int from= 1;
	int to= 100;
	
	SamReaderFactory srf=SamReaderFactory.make();
	SamReader samReader= srf.open(new File("test_data/mjb050_oxBS.bam"));
	SAMFileHeader fh= samReader.getFileHeader();
	IntervalList il= new IntervalList(fh);
	Interval interval= new Interval(chrom, from, to);
	il.add(interval);
	
	List<SamRecordFilter> filters= FlagToFilter.flagToFilterList(f_incl, F_excl);

	SamLocusIterator samLocIter= new SamLocusIterator(samReader, il, true);
	samLocIter.setSamFilters(filters);
	while(samLocIter.hasNext()){
		LocusInfo locus= samLocIter.next();
		if(locus.getRecordAndPositions().size() > 0){
			//System.out.println(locus.getPosition() + " " + locus.getRecordAndPositions().size() + " " +
			//		locus.getRecordAndPositions().get(0).getRecord().getFlags());
		}
	}
}
 
开发者ID:dariober,项目名称:ASCIIGenome,代码行数:28,代码来源:FilterTest.java

示例8: testIteratorWithIntron

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
@Test
  public void testIteratorWithIntron() {
  	// See https://github.com/samtools/htsjdk/issues/838
  	// Prepare a sam header
String sqHeader = "@HD\tSO:coordinate\tVN:1.0\n"
                      + "@SQ\tSN:chr1\tAS:HG18\tLN:10000000\n";

// Prepare one read with a 500,000 bases skipped
String cigar= "18M500000N18M";
String s1 = "read1\t0\tchr1\t1\t255\t" + cigar + "\t*\t0\t0\tACCTACGTTCAATATTACAGGCGAACATACTTACTA\t*\n";

// Prepare sam input and samReader
String exampleSam = sqHeader + s1 + s1;
ByteArrayInputStream inputStream = new ByteArrayInputStream(exampleSam.getBytes());
SamReader samReader= SamReaderFactory.makeDefault().open(SamInputResource.of(inputStream));

// A small interval to iterate over:
IntervalList il= new IntervalList(samReader.getFileHeader());
il.add(new Interval("chr1", 1, 100));

SamLocusIterator sli= new SamLocusIterator(samReader, il, true);

// Iterate 
long t0= System.currentTimeMillis();
int n= 0;
for (SamLocusIterator.LocusInfo li : sli) {
	n++;
}
long t1= System.currentTimeMillis();
System.err.println("Time to iterate " + n + " loci: " + (t1-t0) / 1000.0 + " sec");
sli.close();
  }
 
开发者ID:dariober,项目名称:ASCIIGenome,代码行数:33,代码来源:SamLocusIteratorTest.java

示例9: inputGetPileupBaseCount

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
@DataProvider(name = "inputGetPileupBaseCount")
public Object[][] inputGetPileupBaseCount() throws IOException {
    try (final SamReader bamReader = SamReaderFactory.makeDefault().open(NORMAL_BAM_FILE)) {
        final IntervalList intervals = new IntervalList(bamReader.getFileHeader());
        intervals.add(new Interval("1", 100, 100));
        intervals.add(new Interval("1", 11000, 11000));
        intervals.add(new Interval("1", 14000, 14000));
        intervals.add(new Interval("1", 14630, 14630));

        final SamLocusIterator locusIterator = new SamLocusIterator(bamReader, intervals);

        final Nucleotide.Counter baseCounts1 = makeBaseCounts(0, 0, 0, 0);
        final Nucleotide.Counter baseCounts2 = makeBaseCounts(0, 9, 0, 0);
        final Nucleotide.Counter baseCounts3 = makeBaseCounts(12, 0, 0, 0);
        final Nucleotide.Counter baseCounts4 = makeBaseCounts(0, 0, 8, 9);

        if (!locusIterator.hasNext()) {
            throw new SAMException("Can't get locus to start iteration. Check that " + NORMAL_BAM_FILE.toString()
                    + " contains 1:0-16000.");
        }
        final SamLocusIterator.LocusInfo locus1 = locusIterator.next();
        final SamLocusIterator.LocusInfo locus2 = locusIterator.next();
        final SamLocusIterator.LocusInfo locus3 = locusIterator.next();
        final SamLocusIterator.LocusInfo locus4 = locusIterator.next();
        locusIterator.close();

        return new Object[][]{
                {locus1, baseCounts1},
                {locus2, baseCounts2},
                {locus3, baseCounts3},
                {locus4, baseCounts4}
        };
    }
}
 
开发者ID:broadinstitute,项目名称:gatk-protected,代码行数:35,代码来源:HetPulldownCalculatorUnitTest.java

示例10: inputGetTumorHetPulldown15

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
@DataProvider(name = "inputGetTumorHetPulldownMin15")
public Object[][] inputGetTumorHetPulldown15() {
    final Pulldown tumorHetPulldown = new Pulldown(normalHeader);
    tumorHetPulldown.add(new AllelicCount(new SimpleInterval("1", 14630, 14630), 9, 8));
    tumorHetPulldown.add(new AllelicCount(new SimpleInterval("2", 14689, 14689), 6, 9));

    final IntervalList normalHetIntervals = new IntervalList(tumorHeader);
    normalHetIntervals.add(new Interval("1", 14630, 14630));
    normalHetIntervals.add(new Interval("2", 14689, 14689));

    return new Object[][]{
            {normalHetIntervals, tumorHetPulldown}
    };
}
 
开发者ID:broadinstitute,项目名称:gatk-protected,代码行数:15,代码来源:HetPulldownCalculatorUnitTest.java

示例11: getReadDepth

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
private static double getReadDepth(SAMFileReader samReader, String chr, int start, int end){

if(start >= end){
	return -1;
}

//SAMFileReader  samReader=new  SAMFileReader(new  File(str));
      String chromId=chr;
      int chromStart=start;
      int chromEnd=end;
      int pos=0;
      int depth=0;
      int total=0;
      int count=0;
      Interval  interval=new  Interval(chromId,chromStart,chromEnd);
      IntervalList  iL=new  IntervalList(samReader.getFileHeader());
      iL.add(interval);

      SamLocusIterator  sli=new  SamLocusIterator(samReader,iL,true);

      for(Iterator<SamLocusIterator.LocusInfo> iter=sli.iterator(); iter.hasNext();){
          SamLocusIterator.LocusInfo  locusInfo=iter.next();
          //pos = locusInfo.getPosition();
          depth = locusInfo.getRecordAndPositions().size();
          total+=depth;
          count++;
          //System.out.println("POS="+pos+" depth:"+depth);
          }
      //System.out.println("total: "+total+"\tcount: "+count);
      sli.close();
      //samReader.close();
      
      return (double)total/count;
  }
 
开发者ID:PapenfussLab,项目名称:clove,代码行数:35,代码来源:Clove.java

示例12: testNoVariants

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
@Test
public void testNoVariants() {
    final IntervalList intervalList         = new IntervalList(header);
    intervalList.add(new Interval(this.dict.getSequence(0).getSequenceName(), 1, 100));
    final VCFFileReader reader              = getReader(EMPTY_VCF);
    final Iterator<VariantContext> iterator = new ByIntervalListVariantContextIterator(reader, intervalList);
    Assert.assertFalse(iterator.hasNext());
    reader.close();
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:10,代码来源:ByIntervalListVariantContextIteratorTest.java

示例13: testSimpleOverlap

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
@Test
public void testSimpleOverlap() {
    final IntervalList intervalList         = new IntervalList(header);
    intervalList.add(new Interval("2", 167166899, 167166899));
    final VCFFileReader reader              = getReader(CEU_TRIOS_SNPS_VCF);
    final Iterator<VariantContext> iterator = new ByIntervalListVariantContextIterator(reader, intervalList);
    Assert.assertTrue(iterator.hasNext());
    final VariantContext ctx = iterator.next();
    Assert.assertEquals(ctx.getStart(), 167166899);
    Assert.assertFalse(iterator.hasNext());
    reader.close();
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:13,代码来源:ByIntervalListVariantContextIteratorTest.java

示例14: testNoOverlapDifferentContig

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
@Test
public void testNoOverlapDifferentContig() {
    final IntervalList intervalList         = new IntervalList(header);
    intervalList.add(new Interval("3", 167166899, 167166899));
    final VCFFileReader reader              = getReader(CEU_TRIOS_SNPS_VCF);
    final Iterator<VariantContext> iterator = new ByIntervalListVariantContextIterator(reader, intervalList);
    Assert.assertFalse(iterator.hasNext());
    reader.close();
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:10,代码来源:ByIntervalListVariantContextIteratorTest.java

示例15: testSimpleEnclosing

import htsjdk.samtools.util.IntervalList; //导入方法依赖的package包/类
@Test
public void testSimpleEnclosing() {
    final IntervalList intervalList         = new IntervalList(header);
    intervalList.add(new Interval("12", 68921962, 68921962)); // deletion spans this
    final VCFFileReader reader              = getReader(CEU_TRIOS_INDELS_VCF);
    final Iterator<VariantContext> iterator = new ByIntervalListVariantContextIterator(reader, intervalList);
    Assert.assertTrue(iterator.hasNext());
    final VariantContext ctx = iterator.next();
    Assert.assertEquals(ctx.getStart(), 68921960);
    Assert.assertEquals(ctx.getEnd(), 68921966);
    Assert.assertFalse(iterator.hasNext());
    reader.close();
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:14,代码来源:ByIntervalListVariantContextIteratorTest.java


注:本文中的htsjdk.samtools.util.IntervalList.add方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。