Seqanswers Leaderboard Ad

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
                          Non-Coding RNA Research and Technologies
                          by seqadmin




                          Non-coding RNAs (ncRNAs) do not code for proteins but play important roles in numerous cellular processes including gene silencing, developmental pathways, and more. There are numerous types including microRNA (miRNA), long ncRNA (lncRNA), circular RNA (circRNA), and more. In this article, we discuss innovative ncRNA research and explore recent technological advancements that improve the study of ncRNAs.

                          Nobel Prize for MicroRNA Discovery
                          This week,...
                          10-07-2024, 08:07 AM
                        • seqadmin
                          Recent Developments in Metagenomics
                          by seqadmin





                          Metagenomics has improved the way researchers study microorganisms across diverse environments. Historically, studying microorganisms relied on culturing them in the lab, a method that limits the investigation of many species since most are unculturable1. Metagenomics overcomes these issues by allowing the study of microorganisms regardless of their ability to be cultured or the environments they inhabit. Over time, the field has evolved, especially with the advent...
                          09-23-2024, 06:35 AM

                        ad_right_rmr

                        Collapse

                        News

                        Collapse

                        Topics Statistics Last Post
                        Started by seqadmin, Today, 06:55 AM
                        0 responses
                        8 views
                        0 likes
                        Last Post seqadmin  
                        Started by seqadmin, 10-02-2024, 04:51 AM
                        0 responses
                        105 views
                        0 likes
                        Last Post seqadmin  
                        Started by seqadmin, 10-01-2024, 07:10 AM
                        0 responses
                        113 views
                        0 likes
                        Last Post seqadmin  
                        Started by seqadmin, 09-30-2024, 08:33 AM
                        1 response
                        117 views
                        0 likes
                        Last Post EmiTom
                        by EmiTom
                         
                        Working...
                        X