Unconfigured Ad

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • njh_TO
    Junior Member
    • Nov 2011
    • 4

    #1

    Perl: get specific base from FASTA file.

    I've written a piece of Perl code that retrieves a base from a FASTA file, given the contig label (e.g. chr1) and base position. However- I think it runs slowly, and am sure is not optimal: mainly because requests are usually made in an ordered manner, which is not reflected by my code.

    Is anyone aware of a function that has already been written to do this well?
  • Dameon
    Member
    • Dec 2011
    • 14

    #2
    samtools faidx /path/to/your/genome.fa chr1:base_position

    Comment

    • njh_TO
      Junior Member
      • Nov 2011
      • 4

      #3
      Fast response- thanks

      Comment

      • Dameon
        Member
        • Dec 2011
        • 14

        #4
        No problem. I was just incorporating that little bit into one of my perl scripts yesterday. Glad it could help.

        Comment

        • njh_TO
          Junior Member
          • Nov 2011
          • 4

          #5
          FYI:
          using Benchmark:

          Rate mine samtools
          mine 111/s -- -92%
          samtools 1449/s 1201% --

          Comment

          • krobison
            Senior Member
            • Nov 2007
            • 734

            #6
            Are you using Bio:: DB ::Fasta? (Apologies for the spaces; otherwise the I get a smilie version: Bio:B::Fasta)

            For your benchmark, are you calling samtools repeatedly or once? If you have multiple requests, better to batch them up and call samtools -- there's an overhead in process creation and probably in firing up samtools.

            Comment

            • njh_TO
              Junior Member
              • Nov 2011
              • 4

              #7
              Thanks. No, I'm not- but I'll take a look.

              Not sure how you would go about bundling these requests, is it possible to pass samtools an array of positions, returning a corresponding array of bases?

              Benchmarking calls the following function X times.

              Currently looks something like:

              sub getFASTABaseSamtools
              {
              my $chrID = shift;
              my $basepos = shift;
              my $fastapath = shift;
              my @result = `samtools faidx $fastapath $chrID:$basepos-$basepos`;
              chomp($result[1]);
              return uc($result[1]);
              }

              Comment

              Latest Articles

              Collapse

              • SEQadmin2
                Beyond CRISPR/Cas9: Understand, Choose, and Use the Right Genome Editing Tool
                by SEQadmin2



                CRISPR/Cas9 sparked the gene editing revolution for both research and therapeutics.1 But this system still showed severe issues that limited its applications. The most prominent were the heavy reliance on PAM sequences, delivery limitations, double-stranded breaks that prompt unintended edits and cell death, and editing inefficiency (both in targeting and in knock-in reliability).

                Despite this, “CRISPR helped turn genome editing from a specialized technique into
                ...
                07-31-2026, 11:01 AM
              • SEQadmin2
                Proteomic Platforms: How to Choose the Right Analytical Strategy to Improve Detection and Clinical Applications
                by SEQadmin2


                Proteomics platforms are evolving rapidly, with advances in mass spectrometry and affinity-based approaches expanding what researchers can detect and at what scale. As the field moves toward deeper proteome coverage and clinical applications, scientists face an increasingly complex landscape of tools. This article will explore how researchers are navigating these choices to find the right platform for their work.

                The systematic characterization of the human proteome has
                ...
                07-20-2026, 11:48 AM
              • SEQadmin2
                Advanced Sequencing Platforms Tackle Neuroscience’s Toughest Genomics Problems
                by SEQadmin2



                Genomics studies in neuroscience face a special challenge due to the brain’s complexity and scarcity of samples. Mapping changes in cell type and state using conventional next-generation sequencing methods remains challenging. Advances in technologies like single-cell sequencing, spatial transcriptomics, and long-read sequencing have opened the door to deeper studies of the brain and diseases like Alzheimer’s, amyotrophic lateral sclerosis (ALS), and schizophrenia.
                ...
                07-09-2026, 11:10 AM

              ad_right_rmr

              Collapse

              News

              Collapse

              Topics Statistics Last Post
              Started by SEQadmin2, 07-31-2026, 02:55 AM
              0 responses
              17 views
              0 reactions
              Last Post SEQadmin2  
              Started by SEQadmin2, 07-24-2026, 12:17 PM
              0 responses
              15 views
              0 reactions
              Last Post SEQadmin2  
              Started by SEQadmin2, 07-23-2026, 11:41 AM
              0 responses
              13 views
              0 reactions
              Last Post SEQadmin2  
              Started by SEQadmin2, 07-20-2026, 11:10 AM
              0 responses
              24 views
              0 reactions
              Last Post SEQadmin2  
              Working...