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
                          Advanced Tools Transforming the Field of Cytogenomics
                          by seqadmin


                          At the intersection of cytogenetics and genomics lies the exciting field of cytogenomics. It focuses on studying chromosomes at a molecular scale, involving techniques that analyze either the whole genome or particular DNA sequences to examine variations in structure and behavior at the chromosomal or subchromosomal level. By integrating cytogenetic techniques with genomic analysis, researchers can effectively investigate chromosomal abnormalities related to diseases, particularly...
                          Yesterday, 06:26 AM
                        • 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, 06:57 AM
                        0 responses
                        6 views
                        0 likes
                        Last Post seqadmin  
                        Started by seqadmin, Yesterday, 07:53 AM
                        0 responses
                        8 views
                        0 likes
                        Last Post seqadmin  
                        Started by seqadmin, 09-25-2023, 07:42 AM
                        0 responses
                        14 views
                        0 likes
                        Last Post seqadmin  
                        Started by seqadmin, 09-22-2023, 09:05 AM
                        0 responses
                        44 views
                        0 likes
                        Last Post seqadmin  
                        Working...
                        X