org.broadinstitute.gatk.utils.sam.GATKSAMRecord.isStrandless()方法的使用及代码示例

x33g5p2x  于2022-01-20 转载在 其他  
字(5.3k)|赞(0)|评价(0)|浏览(61)

本文整理了Java中org.broadinstitute.gatk.utils.sam.GATKSAMRecord.isStrandless()方法的一些代码示例,展示了GATKSAMRecord.isStrandless()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。GATKSAMRecord.isStrandless()方法的具体详情如下:
包路径:org.broadinstitute.gatk.utils.sam.GATKSAMRecord
类名称:GATKSAMRecord
方法名:isStrandless

GATKSAMRecord.isStrandless介绍

[英]Does this read have a meaningful strandedness value? Some advanced types of reads, such as reads coming from merged fragments, don't have meaningful strandedness values, as they are composites of multiple other reads. Strandless reads need to be handled specially by code that cares about stranded information, such as FS.
[中]该读数是否具有有意义的搁浅值?一些高级读取类型,例如来自合并片段的读取,没有有意义的strandedness值,因为它们是多个其他读取的组合。无搁浅读取需要由关心搁浅信息(如FS)的代码专门处理。

代码示例

代码示例来源:origin: broadgsa/gatk

@Override
public void setReadNegativeStrandFlag(final boolean flag) {
  if ( isStrandless() )
    throw new IllegalStateException("Cannot set the strand of a strandless read");
  super.setReadNegativeStrandFlag(flag);
}

代码示例来源:origin: broadgsa/gatk-protected

private void updateTable(final int[] table, final int alleleIndex, final GATKSAMRecord read) {
  if (alleleIndex < 0 || (alleleIndex+1)*2 > table.length) return;
  final int offset = alleleIndex * 2;
  //Unstranded reads are not meaningful for this annotation, they can be found in the AD annotation
  if (!read.isStrandless()) {
    final boolean isFW = !read.getReadNegativeStrandFlag();
    table[offset + (isFW ? 0 : 1)]++;
  }
}

代码示例来源:origin: broadgsa/gatk

@Override
public boolean getReadNegativeStrandFlag() {
  return ! isStrandless() && super.getReadNegativeStrandFlag();
}

代码示例来源:origin: broadgsa/gatk-protected

private void splitPRALMintoForwardAndReverseReads(final PerReadAlleleLikelihoodMap originalPRALM, final PerReadAlleleLikelihoodMap forwardPRALM, final PerReadAlleleLikelihoodMap reversePRALM) {
    final Map<GATKSAMRecord, Map<Allele, Double>> origReadAlleleLikelihoodMap = originalPRALM.getLikelihoodReadMap();
    for (final GATKSAMRecord read : origReadAlleleLikelihoodMap.keySet()) {
      if (read.isStrandless())
        continue;

      for (final Map.Entry<Allele, Double> alleleLikelihoodMap : origReadAlleleLikelihoodMap.get(read).entrySet()) {
        final Allele allele = alleleLikelihoodMap.getKey();
        final Double likelihood = alleleLikelihoodMap.getValue();
        if (read.getReadNegativeStrandFlag())
          reversePRALM.add(read, allele, likelihood);
        else
          forwardPRALM.add(read, allele, likelihood);
      }
    }
  }
}

代码示例来源:origin: broadgsa/gatk-protected

private static void updateTable(final int[] table, final Allele allele, final GATKSAMRecord read, final Allele ref, final List<Allele> allAlts) {
  final boolean matchesRef = allele.equals(ref, true);
  final boolean matchesAnyAlt = allAlts.contains(allele);
  if ( matchesRef || matchesAnyAlt ) {
    final int offset = matchesRef ? 0 : ARRAY_DIM;
    if ( read.isStrandless() ) {
      // a strandless read counts as observations on both strand, at 50% weight, with a minimum of 1
      // (the 1 is to ensure that a strandless read always counts as an observation on both strands, even
      // if the read is only seen once, because it's a merged read or other)
      table[offset]++;
      table[offset + 1]++;
    } else {
      // a normal read with an actual strand
      final boolean isFW = !read.getReadNegativeStrandFlag();
      table[offset + (isFW ? 0 : 1)]++;
    }
  }
}

代码示例来源:origin: broadgsa/gatk-protected

alleleStrandCounts.add(1,0);
if (read.isStrandless()) {

代码示例来源:origin: broadgsa/gatk

@Test
public void testStrandlessReads() {
  final byte [] bases = {'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A'};
  final byte [] quals = {20 , 20 , 20 , 20 , 20 , 20 , 20 , 20 };
  GATKSAMRecord read = ArtificialSAMUtils.createArtificialRead(bases, quals, "6M");
  Assert.assertEquals(read.isStrandless(), false);
  read.setReadNegativeStrandFlag(false);
  Assert.assertEquals(read.isStrandless(), false);
  Assert.assertEquals(read.getReadNegativeStrandFlag(), false);
  read.setReadNegativeStrandFlag(true);
  Assert.assertEquals(read.isStrandless(), false);
  Assert.assertEquals(read.getReadNegativeStrandFlag(), true);
  read.setReadNegativeStrandFlag(true);
  read.setIsStrandless(true);
  Assert.assertEquals(read.isStrandless(), true);
  Assert.assertEquals(read.getReadNegativeStrandFlag(), false, "negative strand flag should return false even through its set for a strandless read");
}

代码示例来源:origin: broadgsa/gatk

@Test(enabled = !DEBUG, dataProvider = "MergeFragmentsTest")
public void testMergingTwoReads(final String name, final GATKSAMRecord read1, final GATKSAMRecord read2, final GATKSAMRecord expectedMerged) {
  final GATKSAMRecord actual = FragmentUtils.mergeOverlappingPairedFragments(read1, read2);
  if ( expectedMerged == null ) {
    Assert.assertNull(actual, "Expected reads not to merge, but got non-null result from merging");
  } else {
    Assert.assertTrue(actual.isStrandless(), "Merged reads should be strandless");
    Assert.assertNotNull(actual, "Expected reads to merge, but got null result from merging");
    // I really care about the bases, the quals, the CIGAR, and the read group tag
    Assert.assertEquals(actual.getCigarString(), expectedMerged.getCigarString());
    Assert.assertEquals(actual.getReadBases(), expectedMerged.getReadBases());
    Assert.assertEquals(actual.getReadGroup(), expectedMerged.getReadGroup());
    Assert.assertEquals(actual.getMappingQuality(), expectedMerged.getMappingQuality());
    for ( final EventType type : EventType.values() )
      Assert.assertEquals(actual.getBaseQualities(type), expectedMerged.getBaseQualities(type), "Failed base qualities for event type " + type);
  }
}

代码示例来源:origin: broadgsa/gatk-protected

correctedRead.setIsStrandless(inputRead.isStrandless());
correctedRead.setReadBases(inputRead.getReadBases());
correctedRead.setReadString(inputRead.getReadString());

相关文章

微信公众号

最新文章

更多

GATKSAMRecord类方法