Seqanswers Leaderboard Ad

Collapse

Announcement

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

  • downsampling read pairs from a bam file

    Hi guys,

    I am trying to downsample a bam file with paired reads. Initially I was using samtools view -s, providing a fraction of reads I'd like to keep. But the caveat for this is that the output file will contain not only intact read pairs but also individual reads. It is bad for me because I am trying to use this downsampled bam file for analysis with packages that take as an input bed files (such as diffReps). In case when I have both paired and not paired reads in a bam file, there is no way I can convert it to bed 100% correctly.

    Do you have any suggestions on how I could downsample a bam file keeping read pairs intact? I really struggled to find a ready solution for this by googling.

    Many thanks in advance!

  • #2
    Take a look at @Brian's post in this thread.

    Edit: Looking at @Brian's post again it seems as if the paired information would not be kept. If you have original fastq files available you should be able to retrieve the other read from a pair by using repair.sh.
    Last edited by GenoMax; 04-05-2016, 06:05 AM.

    Comment


    • #3
      seqtk does this and will keep read pairs intact if you pass the same random seed:


      Code:
      seqtk sample -s100 read1.fq 10000 > sub1.fq
      seqtk sample -s100 read2.fq 10000 > sub2.fq

      Comment


      • #4
        GenoMax, thank you for your reply!
        Do you know what happens with the total read count after this repair? I don't quite understand that. If I just complete all the read pairs, it will obviously affect total number of reads I am getting and screw downsampling.

        Comment


        • #5
          thank you, fanli!
          I am not sure that downsampling of a fastq file is a good idea. I use downsampling for normalisation and if I downsample initial fastq files I don't know how many reads I am getting back after the alignment is done which is not suitable for normalisation. However, I could convert bam with uniquely aligned reads after PCR duplicates removal to fastq and use seqtk. I am not sure that it is the most optimal solution though. But I will think about it.

          Comment


          • #6
            "Repair.sh" (re-pair : a trick name) should only recover corresponding reads to the ones that are present in the downsampled file.

            I assume you are doing this from the BAM because you only want to sample reads that aligned (your BAM does not have unmapped reads?). If you don't care about the alignments then you could downsample the original fastq files by using reformat.sh or the seqtk method @fanli posted above.

            Comment


            • #7
              >"Repair.sh" (re-pair : a trick name) should only recover corresponding reads to the ones that are present in the downsampled file.

              But if I am doing it for several files, for different files ratio of the incomplete pairs will be random and different. It means that if I add a pair to the reads in the downsampled file I will potentially get different number of reads and scew downsampling (with subsequent normalisation).

              >I assume you are doing this from the BAM because you only want to sample reads that aligned (your BAM does not have unmapped reads?).

              Exactly!
              Last edited by EcoRInya; 04-05-2016, 07:30 AM.

              Comment


              • #8
                Can you clarify what exactly are you trying to achive? Are these separate files/samples or same sample multiple files? Your BAM files don't have unmapped reads?

                Comment


                • #9
                  Sure! I am downsampling bam files that contain uniquely aligned reads with PCR duplicates removed. In total I have 6 bam files (2 conditions, 3 replicated each). For each file I have a normalisation coefficient which I want to use as a downsampling factor, bringing each bam file to a specific read count. I will be using the resulting downsampled bam files for different kinds of comparative analysis between groups. For instance, using diffReps package. It takes as an input bed files. For paired end reads these bed files should contain position of the centre of a fragment. In order, to create such a file all the reads in the bam file should be paired, which I have failed to achieve using standard samtools view -s.

                  Comment

                  Latest Articles

                  Collapse

                  • seqadmin
                    Best Practices for Single-Cell Sequencing Analysis
                    by seqadmin



                    While isolating and preparing single cells for sequencing was historically the bottleneck, recent technological advancements have shifted the challenge to data analysis. This highlights the rapidly evolving nature of single-cell sequencing. The inherent complexity of single-cell analysis has intensified with the surge in data volume and the incorporation of diverse and more complex datasets. This article explores the challenges in analysis, examines common pitfalls, offers...
                    Today, 07:15 AM
                  • seqadmin
                    Latest Developments in Precision Medicine
                    by seqadmin



                    Technological advances have led to drastic improvements in the field of precision medicine, enabling more personalized approaches to treatment. This article explores four leading groups that are overcoming many of the challenges of genomic profiling and precision medicine through their innovative platforms and technologies.

                    Somatic Genomics
                    “We have such a tremendous amount of genetic diversity that exists within each of us, and not just between us as individuals,”...
                    05-24-2024, 01:16 PM

                  ad_right_rmr

                  Collapse

                  News

                  Collapse

                  Topics Statistics Last Post
                  Started by seqadmin, Today, 08:18 AM
                  0 responses
                  8 views
                  0 likes
                  Last Post seqadmin  
                  Started by seqadmin, Today, 08:04 AM
                  0 responses
                  10 views
                  0 likes
                  Last Post seqadmin  
                  Started by seqadmin, 06-03-2024, 06:55 AM
                  0 responses
                  13 views
                  0 likes
                  Last Post seqadmin  
                  Started by seqadmin, 05-30-2024, 03:16 PM
                  0 responses
                  27 views
                  0 likes
                  Last Post seqadmin  
                  Working...
                  X