Seqanswers Leaderboard Ad

Collapse

Announcement

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

  • splitting big genbank file

    I have a big gbk file containing multiple gbks, is there any simple way to split this big gbk into small gbks Thanks.

  • #2
    I haven't tried it out but 'seqretsplit' from the EMBOSS package might do what you want. Otherwise it's a quick script in Bioperl or Biopython, e.g. in BioPython (untested)

    Run like python splitgbk.py < input.gbk

    Will create a file for each entry in the current directory.

    -- splitgbk.py

    Code:
    from Bio import SeqIO
    import sys
    
    for rec in SeqIO.parse(sys.stdin, "genbank"):
       SeqIO.write([rec], open(rec.id + ".gbk", "w"), "genbank")

    Comment


    • #3
      If you want one file per record, try EMBOSS seqret and the -ossingle_outseq option.

      EDIT: That probably does the same as EMBOSS seqretsplit suggested by Nick while I was writing this.


      Do you just want to break it up into batches, say 10 records in each file? Or, do you have a particular order in mind (which could involve either sorting or random access).
      Last edited by maubp; 03-19-2012, 11:28 AM. Reason: Nick posted at same time

      Comment


      • #4
        Come on Peter, I caught you napping again

        Comment


        • #5
          split genbank files using awk

          awk -v n=1 '/^\/\//{close("out"n);n++;next} {print > "out"n}' yourfilename.gbk

          Split yourfilename.gbk into multiple files by splitting at "//" (end of record) line.
          Last edited by Richard Finney; 03-20-2012, 09:51 AM.

          Comment


          • #6
            Hi all,

            I have the same problem but I want to split the file every 1000 entries. My file has 500,000 records and I want 500 files of 1000 records each. Any suggestions?

            Thanks in advance.
            Thanos

            Comment


            • #7
              Thanos - which scripting languages do you know? GenBank records end with a // line (which is what Richard's awk command exploits) so it is very simple to split up a file into sub-files named however you like using Perl, Python or Ruby.

              Comment


              • #8
                Hi Peter and thank you for your immediate reply.

                I currently use Perl (not very experienced though). I guess I can try to alter Richard's awk command and implement it in a Perl script for renaming etc.

                Thank you once again.

                Comment


                • #9
                  awk -v n=1 -v p=0 '/^\/\//{p++;if(((p%1000)==0)&&(p!=0)){close("out"n);n++;next}} {print > "out"n}' yourfilename.gbk

                  splits at 1000 records.

                  Comment


                  • #10
                    Thanks a lot Richard! I really appreciate that!

                    Best,
                    Thanos

                    Comment

                    Latest Articles

                    Collapse

                    • seqadmin
                      Genetic Variation in Immunogenetics and Antibody Diversity
                      by seqadmin



                      The field of immunogenetics explores how genetic variations influence immune responses and susceptibility to disease. In a recent SEQanswers webinar, Oscar Rodriguez, Ph.D., Postdoctoral Researcher at the University of Louisville, and Ruben Martínez Barricarte, Ph.D., Assistant Professor of Medicine at Vanderbilt University, shared recent advancements in immunogenetics. This article discusses their research on genetic variation in antibody loci, antibody production processes,...
                      11-06-2024, 07:24 PM
                    • seqadmin
                      Choosing Between NGS and qPCR
                      by seqadmin



                      Next-generation sequencing (NGS) and quantitative polymerase chain reaction (qPCR) are essential techniques for investigating the genome, transcriptome, and epigenome. In many cases, choosing the appropriate technique is straightforward, but in others, it can be more challenging to determine the most effective option. A simple distinction is that smaller, more focused projects are typically better suited for qPCR, while larger, more complex datasets benefit from NGS. However,...
                      10-18-2024, 07:11 AM

                    ad_right_rmr

                    Collapse

                    News

                    Collapse

                    Topics Statistics Last Post
                    Started by seqadmin, Today, 11:09 AM
                    0 responses
                    24 views
                    0 likes
                    Last Post seqadmin  
                    Started by seqadmin, Today, 06:13 AM
                    0 responses
                    20 views
                    0 likes
                    Last Post seqadmin  
                    Started by seqadmin, 11-01-2024, 06:09 AM
                    0 responses
                    30 views
                    0 likes
                    Last Post seqadmin  
                    Started by seqadmin, 10-30-2024, 05:31 AM
                    0 responses
                    21 views
                    0 likes
                    Last Post seqadmin  
                    Working...
                    X