Seqanswers Leaderboard Ad

Collapse

Announcement

Collapse
No announcement yet.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Samtools Depth - Filling in the gaps with 0 - Perl?

    Hi everyone,
    I thought that perhaps others have encountered and previously solved the following problem:

    Samtools depth allows you to collect read depth information across a range in the genome using bed files to supply the coordinates.

    My problem, is that in my output, the low quality regions or the elimination events appear as gaps rather than as zeros. Is there a way to change the parameters of samtools depth to report for all positions even if it just reports a 0? Or do I just need to write a script to fill in the blanks?

    Current output:
    Code:
    19      80820312        1       0       0
    19      80820313        1       0       0
    19      80820314        1       0       0
    19      80826337        2       0       2
    19      80826338        2       0       3
    19      80826339        3       0       3
    19      80826340        3       0       4
    Desired output:
    Code:
    19      80826312        1       0       0
    19      80820313        1       0       0
    19      80820314        1       0       0
    19      80820315        0       0       0
    19      80820316        0       0       0
    ..
    19      80820335        0       0       0
    19      80820336        0       0       0
    19      80826337        2       0       2
    19      80826338        2       0       3
    19      80826339        3       0       3
    19      80826340        3       0       4
    **with the .. region filled in as well.

    I have managed to write a code that identifies the breakpoints, but I'm not sure how to add additional lines that will run consecutively through the elimination site until it reaches the next set of depth values. Below is the code I've been working on (it's a perl one-liner and pretty raw):

    Code:
    perl -e '$last == 0; while (<>){@a = split(/\t/, $_, 5); $n = $a[1]; if ($last == 0) { $last = ($a[1] + 1) ;  } elsif ($n == $last){ $last = ($n + 1);  next; } elsif ($n > ($last + 1)){ print "$a[0]\t$last\t0\t0\t0\n"; $last = ($n + 1); print;}  }' depth1-2-3.bed
    All help is greatly appreciated!

  • #2
    there is actually no need to write something new. You can get your desired output by using bedtools genomecov: http://bedtools.readthedocs.org/en/l...genomecov.html

    In short:
    using the "-d" parameter gives you a per base coverage
    using the "-bga" parameters will group regions of identical coverage

    Both will output bases/regions of zero coverage.

    Comment


    • #3
      It doesn't look like genomecov will allow you to filter the output according to mapping quality thresholds. Anyone know what the cutoff is? It's not in the docs. thanks!
      Last edited by biograd; 10-02-2014, 01:06 AM.

      Comment


      • #4
        As far as I know, it doesn't apply a filter at all. You would need to pre-filter your samfile using your own quality threshold which is pretty straight forward using awk:

        Code:
        awk -F "\t" '{ if($5 > 20) print $0}' ./yourSamFile.sam
        This returns only those lines where the mapping quality is greater than 20.

        Comment

        Latest Articles

        Collapse

        • seqadmin
          Current Approaches to Protein Sequencing
          by seqadmin


          Proteins are often described as the workhorses of the cell, and identifying their sequences is key to understanding their role in biological processes and disease. Currently, the most common technique used to determine protein sequences is mass spectrometry. While still a valuable tool, mass spectrometry faces several limitations and requires a highly experienced scientist familiar with the equipment to operate it. Additionally, other proteomic methods, like affinity assays, are constrained...
          04-04-2024, 04:25 PM
        • seqadmin
          Strategies for Sequencing Challenging Samples
          by seqadmin


          Despite advancements in sequencing platforms and related sample preparation technologies, certain sample types continue to present significant challenges that can compromise sequencing results. Pedro Echave, Senior Manager of the Global Business Segment at Revvity, explained that the success of a sequencing experiment ultimately depends on the amount and integrity of the nucleic acid template (RNA or DNA) obtained from a sample. “The better the quality of the nucleic acid isolated...
          03-22-2024, 06:39 AM

        ad_right_rmr

        Collapse

        News

        Collapse

        Topics Statistics Last Post
        Started by seqadmin, 04-11-2024, 12:08 PM
        0 responses
        18 views
        0 likes
        Last Post seqadmin  
        Started by seqadmin, 04-10-2024, 10:19 PM
        0 responses
        22 views
        0 likes
        Last Post seqadmin  
        Started by seqadmin, 04-10-2024, 09:21 AM
        0 responses
        17 views
        0 likes
        Last Post seqadmin  
        Started by seqadmin, 04-04-2024, 09:00 AM
        0 responses
        49 views
        0 likes
        Last Post seqadmin  
        Working...
        X