Seqanswers Leaderboard Ad

Collapse

Announcement

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

  • Add count numbers to headers in a fasta file

    Hi all,

    I have a fasta file with the same header for each sequence, I would like to add natural numbers at the end of each line:

    >OakDna
    ACTCTAAATCAGTGCGAG...
    >OakDna
    AAAAACCCTTTACACTTT...
    >OakDna
    CTCTAAACCTTTAACCTT..
    etc.

    I want something like this:

    >OakDna_1
    ACTCTAAATCAGTGCGAG...
    >OakDna_2
    AAAAACCCTTTACACTTT...
    >OakDna_3
    CTCTAAACCTTTAACCTT..
    etc.
    >OakDna_n
    ACTCATCCAAAACTTTTT..

    Where n is the last number of the sequence in the file.

    Any quick suggestion?

    Thanks in advance,
    Giorgio

  • #2
    Google is your friend in situations like these:

    Comment


    • #3
      I tried to google it, but couldn't find what I was looking for. Btw the link you posted seems to be good...THANKS a lot!

      Comment


      • #4
        I'd just write a simple program to do it

        5 min ?

        Comment


        • #5
          Here a quick and dirty solution in python - was still missing :-)


          #!/usr/bin/env python

          import re
          import string
          import sys


          infile = open(sys.argv[1])
          data = infile.readlines()
          infile.close()

          outfile = open(sys.argv[2], "w")
          c = 1
          l = 1
          for i in data:
          i = re.sub("\n|\r", "", i)
          if c%2 != 0:
          outfile.write(i+"_" +str(l) +"\n")
          l+=1
          else:
          outfile.write(i +"\n")
          c += 1
          outfile.close()


          save the upper code in a file called for example "numberFasta.py"
          on a terminal call the program with: python numberFasta.py <yourInfile> <outfilename>

          Comment


          • #6
            ah..and correct the indention - was lost here...

            Comment


            • #7
              Originally posted by wieni View Post
              Here a quick and dirty solution in python - was still missing :-)


              #!/usr/bin/env python

              import re
              import string
              import sys


              infile = open(sys.argv[1])
              data = infile.readlines()
              infile.close()

              outfile = open(sys.argv[2], "w")
              c = 1
              l = 1
              for i in data:
              i = re.sub("\n|\r", "", i)
              if c%2 != 0:
              outfile.write(i+"_" +str(l) +"\n")
              l+=1
              else:
              outfile.write(i +"\n")
              c += 1
              outfile.close()


              save the upper code in a file called for example "numberFasta.py"
              on a terminal call the program with: python numberFasta.py <yourInfile> <outfilename>
              You can use the "code" tags to make this work (surround the code with [code ] and [/code ] (but no spaces):

              Code:
              #!/usr/bin/env python
              
              import re
              import string
              import sys
              
              
              infile = open(sys.argv[1])
              data = infile.readlines()
              infile.close()
              
              outfile = open(sys.argv[2], "w")
              c = 1
              l = 1
              for i in data:
                  i = re.sub("\n|\r", "", i)
                  if c%2 != 0:
                      outfile.write(i+"_" +str(l) +"\n")
                      l+=1
                  else:
                      outfile.write(i +"\n")
                  c += 1
              outfile.close()

              Comment


              • #8
                A short one:

                Code:
                awk '/^>/{$0=$0"_"(++i)}1' infile

                Comment

                Latest Articles

                Collapse

                • seqadmin
                  Strategies for Sequencing Challenging Samples
                  by seqadmin


                  Despite advancements in sequencing platforms and related sample preparation technologies, certain sample types continue to present significant challenges that can compromise sequencing results. Pedro Echave, Senior Manager of the Global Business Segment at Revvity, explained that the success of a sequencing experiment ultimately depends on the amount and integrity of the nucleic acid template (RNA or DNA) obtained from a sample. “The better the quality of the nucleic acid isolated...
                  03-22-2024, 06:39 AM
                • seqadmin
                  Techniques and Challenges in Conservation Genomics
                  by seqadmin



                  The field of conservation genomics centers on applying genomics technologies in support of conservation efforts and the preservation of biodiversity. This article features interviews with two researchers who showcase their innovative work and highlight the current state and future of conservation genomics.

                  Avian Conservation
                  Matthew DeSaix, a recent doctoral graduate from Kristen Ruegg’s lab at The University of Colorado, shared that most of his research...
                  03-08-2024, 10:41 AM

                ad_right_rmr

                Collapse

                News

                Collapse

                Topics Statistics Last Post
                Started by seqadmin, 03-27-2024, 06:37 PM
                0 responses
                13 views
                0 likes
                Last Post seqadmin  
                Started by seqadmin, 03-27-2024, 06:07 PM
                0 responses
                11 views
                0 likes
                Last Post seqadmin  
                Started by seqadmin, 03-22-2024, 10:03 AM
                0 responses
                53 views
                0 likes
                Last Post seqadmin  
                Started by seqadmin, 03-21-2024, 07:32 AM
                0 responses
                69 views
                0 likes
                Last Post seqadmin  
                Working...
                X