Header Leaderboard Ad

Collapse

Bowtie output to BED format

Collapse

Announcement

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

  • Bowtie output to BED format

    Hi - Can any one please suggest a method to convert Bowtie output to BED format? Is there a bioperl script or any software for that?

    thanks in advance.

  • #2
    Originally posted by polsum View Post
    Hi - Can any one please suggest a method to convert Bowtie output to BED format? Is there a bioperl script or any software for that?

    thanks in advance.
    Ok I just found out. Save the bowtie output in Sam format, convert it to Bam format by samtools and convert Bam to BED by Bedtools.

    Comment


    • #3
      Originally posted by polsum View Post
      Ok I just found out. Save the bowtie output in Sam format, convert it to Bam format by samtools and convert Bam to BED by Bedtools.
      hi, thanks for the question + answer and good parsing..

      Comment


      • #4
        Hi polsum,

        Do you know any Perl ? I have a perl script that will convert bowtie .map file to a .bed file, but you may have to know a little perl to work with it.

        Comment


        • #5
          bowtie to BED format

          awk 'BEGIN {FS= "\t"; OFS="\t"} {print $3, $4, $4+length($5)-1, $1,
          H=111 $H, $2}' Bowtie_output > Bowtie_output.BED


          This is a shell command, give this command in "$" prompt, it will convert your input file (Bowtie_output) file to BED format (Bowtie_output.BED)

          Last edited by arun; 12-23-2010, 01:16 AM.

          Comment


          • #6
            awk 'BEGIN {FS= "\t"; OFS="\t"} {print $3, $4, $4+length($5)-1, $1,
            H=111 $H, $2}' Bowtie_output > Bowtie_output.BED

            This is a shell command, give this command in "$" prompt, it will convert your input file (Bowtie_output) file to BED format (Bowtie_output.BED)

            Comment


            • #7
              Originally posted by arun View Post
              awk 'BEGIN {FS= "\t"; OFS="\t"} {print $3, $4, $4+length($5)-1, $1,
              H=111 $H, $2}' Bowtie_output > Bowtie_output.BED


              This is a shell command, give this command in "$" prompt, it will convert your input file (Bowtie_output) file to BED format (Bowtie_output.BED)

              Hi,

              what is H=111 $H,$2 doing in your command?

              Thanks

              Comment


              • #8
                Originally posted by ysccseqanswers View Post
                Hi,

                what is H=111 $H,$2 doing in your command?

                Thanks
                With the H=111 and $H I think arun is just setting an awk variable. I'm not sure what use it has actually in this case. The exact same result can be achieved with "...$1,111,$2}..." The 5th column in a bed file is for a score to set the level of gray for each item (http://genome.ucsc.edu/FAQ/FAQformat.html#format1).

                $2 is the 6th column - the strand the read maps to.

                If you wanted a random score for column 5 you could use this in the awk command instead:
                "...$1,int(rand()*1000),$2}..."

                Comment


                • #9
                  Code:
                  #!/usr/bin/perl
                  
                  use strict;
                  use warnings;
                  
                  # get file names from the command line
                  my ($input, $output) = @ARGV;
                  
                  # exceptions and usage
                  if (!defined $input or !defined $output) {
                      die "Usage: bedFromBowtie.pl <input> <output>\n";
                  }
                  
                  # open the input/output file
                  open my $out, ">", "$output" or die "Cannot open $output: $!\n";
                  open my $in, "<", "$input" or die "Cannot open $input: $!\n";
                  
                  while ( <$in> ) {
                      chomp;
                      my (undef, $strand, $chr, $start, $sequence) = split "\t"; # assumes standard bowtie output
                      my @sequence = split '', $sequence; # extra work, but allows for variable-length sequences
                      my $length = @sequence;
                      my $end;
                      if ($strand eq '+') {
                          $end = $start + $length - 1;
                      }
                      elsif ($strand eq '-') {
                          $end = $start;
                          $start = $end - $length + 1;
                      }
                      else {
                          die "We have a formatting problem: strand is set to $strand\n";
                      }
                      print $out "$chr\t$start\t$end\tU0\t0\t$strand\n";
                  }
                  
                  print "Done!\n";
                  
                  close $in; close $out; exit;

                  Comment


                  • #10
                    Thanks dnewkirk, could you tell us what would be the advantage to using your perl script would be over an awk command? I'm not criticizing, just wondering. I use an awk command in a shell script to convert.

                    Comment


                    • #11
                      I had posted per the original question without noticing the dates . Either or works, but it may help someone who isn't as familiar with Perl on how to convert between file formats.

                      Comment


                      • #12
                        Thanks dnewkirk

                        I always ignore the dates. A question with an answer many months after the OP is still likely to be valuable for someone out there.

                        Comment

                        Latest Articles

                        Collapse

                        • seqadmin
                          How RNA-Seq is Transforming Cancer Studies
                          by seqadmin



                          Cancer research has been transformed through numerous molecular techniques, with RNA sequencing (RNA-seq) playing a crucial role in understanding the complexity of the disease. Maša Ivin, Ph.D., Scientific Writer at Lexogen, and Yvonne Goepel Ph.D., Product Manager at Lexogen, remarked that “The high-throughput nature of RNA-seq allows for rapid profiling and deep exploration of the transcriptome.” They emphasized its indispensable role in cancer research, aiding in biomarker...
                          09-07-2023, 11:15 PM
                        • seqadmin
                          Methods for Investigating the Transcriptome
                          by seqadmin




                          Ribonucleic acid (RNA) represents a range of diverse molecules that play a crucial role in many cellular processes. From serving as a protein template to regulating genes, the complex processes involving RNA make it a focal point of study for many scientists. This article will spotlight various methods scientists have developed to investigate different RNA subtypes and the broader transcriptome.

                          Whole Transcriptome RNA-seq
                          Whole transcriptome sequencing...
                          08-31-2023, 11:07 AM

                        ad_right_rmr

                        Collapse

                        News

                        Collapse

                        Topics Statistics Last Post
                        Started by seqadmin, Today, 07:42 AM
                        0 responses
                        9 views
                        0 likes
                        Last Post seqadmin  
                        Started by seqadmin, 09-22-2023, 09:05 AM
                        0 responses
                        23 views
                        0 likes
                        Last Post seqadmin  
                        Started by seqadmin, 09-21-2023, 06:18 AM
                        0 responses
                        16 views
                        0 likes
                        Last Post seqadmin  
                        Started by seqadmin, 09-20-2023, 09:17 AM
                        0 responses
                        16 views
                        0 likes
                        Last Post seqadmin  
                        Working...
                        X