Unconfigured Ad

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • zszong@hotmail.com
    Member
    • Sep 2012
    • 17

    get DNA sequence through UCSC DAS server

    Hi All,

    I am trying out the perl code from UCSC help desk posted on biostar to retrieve DNA sequence from UCSC DAS server. After run this script, I didn't get any sequence at all. Could someone have a quick look and point out what might be wrong?

    Many thanks!

    Stuart
    ****************************

    zzong@bugaboo:~/programming> cat retrieve_dna_from_ucsc.pl
    use strict;
    use Bio::das; #actually Das

    #### USAGE
    unless(@ARGV == 2) {
    die("USAGE: $0 | Input BED file | Output FASTA file\n\n");
    }

    #### Access files
    open(INPUT, "<$ARGV[0]") or die("Could not open input!\n");
    open(OUTPUT, ">$ARGV[1]") or die("Could not open output!\n");

    #### DAS db
    my $das = Bio::das->new(-source => 'http://genome.cse.ucsc.edu/cgi-bin/das/', -dsn=>'hg19');

    #### Line counter
    my $count = 0;

    #### Work thru each line of BED file
    while(defined(my $line = <INPUT>)) {
    #### Make sure line begins with chr
    unless($line =~ /^chr/) { next }

    #### Count lines
    $count++;
    print "1$count $line\n";

    #### Split line
    my ($chr, $start, $end, $label) = '';
    my @line_bits = ();

    @line_bits = split(/\t/, $line);

    $chr = $line_bits[0];
    $start = $line_bits[1];
    $end = $line_bits[2];
    $label = $line_bits[3];
    chomp($label);

    #### Define segment of genome
    my $segment = $das->segment("$chr\:$start\,$end");

    #### Get DNA
    my $dna = $segment->dna;

    #### Print sequence to output
    print OUTPUT "\>$chr:$start-$end\_$label\n$dna\n";
    }

    #### Close files
    close(INPUT);
    close(OUTPUT);

    exit;

    *******************
    Last edited by [email protected]; 05-24-2013, 04:04 PM.
  • mastal
    Senior Member
    • Mar 2009
    • 666

    #2
    get DNA sequence through UCSC DAS server

    Did you get any error messages when you ran the script?

    Comment

    • zszong@hotmail.com
      Member
      • Sep 2012
      • 17

      #3
      I figured this out. Minor code changes. The only thing needs to keep in mind is that the input file needs to be tab delimited and every line starts with "chr***.

      Regards!

      Stuart

      **********************

      use strict;
      use Bio:as;

      #### USAGE
      unless(@ARGV == 2) {
      die("USAGE: $0 Input BED file Output FASTA file\n\n");
      }

      #### Access files
      open(INPUT, "<$ARGV[0]") or die("Could not open input!\n");
      open(OUTPUT, ">$ARGV[1]") or die("Could not open output!\n");

      #### DAS db

      #my $das = Bio:as->new(-source => 'http://genome.cse.ucsc.edu/cgi-bin/das/', -dsn=>'hg19');
      my $das = Bio:as->new(-source => 'http://genome.ucsc.edu/cgi-bin/das/', -dsn=>'hg19');
      #### Line counter
      my $count = 0;

      #### Work thru each line of BED file
      while(defined(my $line = <INPUT>)) {
      #### Make sure line begins with chr
      unless($line =~ /^chr/) { next }

      #### Count lines
      $count++;

      #print "1$count $line\n";
      print "$count $line\n";
      #### Split line
      my ($chr, $start, $end, $label) = '';
      my @line_bits = ();

      @line_bits = split(/\t/, $line);

      $chr = $line_bits[0];
      $start = $line_bits[1];
      $end = $line_bits[2];
      $label = $line_bits[3];
      chomp($label);

      # print "$chr is","$start is","$end is", "$label is";
      #### Define segment of genome
      my $segment = $das->segment("$chr\:$start\,$end");
      #print $segment;
      #### Get DNA
      my $dna = $segment->dna;
      #print $dna;
      #### Print sequence to output
      print OUTPUT "\>$chr:$start-$end\_$label\n$dna\n";
      #print OUTPUT "\>$chr:$start-$end\_$label\n";
      }

      #### Close files
      close(INPUT);
      close(OUTPUT);

      exit;

      Comment

      Latest Articles

      Collapse

      • SEQadmin2
        Nine Things a Sample Prep Scientist Thinks About Before Sequencing
        by SEQadmin2


        I’m not a sequencing expert. I’m a purification scientist who uses NGS to evaluate workflows my group develops. With this perspective, we think about the sample first and the NGS workflow second. The sequencer is an exceptionally honest reporter, but it can only report on what you give it, so whether you get clean, interpretable data from an NGS workflow is largely determined before you begin.

        Here are nine questions we think about, in roughly the order they matter, before...
        06-18-2026, 07:11 AM
      • SEQadmin2
        From Collection to Sequencing: Why Sample Preparation and Preservation Define Sequencing Data
        by SEQadmin2


        Data variability is still an issue in sequencing technologies despite the advances in reproducibility and accuracy of these platforms. But the problem does not originate in the sequencing itself, but in the previous steps, before the sample reaches the sequencer.


        The first step is collection, followed by preservation and sample preparation for analysis. Most scientists overlook those steps, but not being careful might just be skewing the experiment’s results.
        ...
        06-02-2026, 10:05 AM

      ad_right_rmr

      Collapse

      News

      Collapse

      Topics Statistics Last Post
      Started by SEQadmin2, 06-26-2026, 11:10 AM
      0 responses
      15 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-17-2026, 06:09 AM
      0 responses
      49 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-09-2026, 11:58 AM
      0 responses
      107 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-05-2026, 10:09 AM
      0 responses
      125 views
      0 reactions
      Last Post SEQadmin2  
      Working...