Seqanswers Leaderboard Ad

Collapse

Announcement

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

  • help about the following python script

    Hello, everybody,

    I would like to run the following python script, but it gives me back error report.

    from Bio import SeqIO
    out=open("try_out.fasta","w")
    for seq_record in SeqIO.parse ("try.fasta","fasta"):
    a=seq_record.seq
    a=a[5:-6]
    id=seq_record.id
    out.write(id,a,"fasta")
    out.close()

    File "try", line 7, in <module>
    out.write(id,a,"fasta")
    TypeError: function takes exactly 1 argument (3 given)

    Could anyone help me about it? I think there might be something wrong with the output file, but I cannot find the solution.

    Thanks!

    All the best,

    Sadiexiaoyu

  • #2
    Hello,

    Originally posted by sadiexiaoyu View Post
    File "try", line 7, in <module>
    out.write(id,a,"fasta")
    TypeError: function takes exactly 1 argument (3 given)
    write() expected only one string as parameter. So if you like to write these 3 arguments seperated with comma to the file you can do something like this:

    Code:
    from Bio import SeqIO
    
    out = open("try_out.fasta", "w")
    for seq_record in SeqIO.parse("try.fasta", "fasta"):
        a = seq_record.seq
        a = a[5:-6]
        id = seq_record.id
        out.write(id+","+a+","+"fasta"+"\n")
    out.close()
    The "\n" at the end is neccessary for linebreak, otherwise you would have all entrys in one line.

    fin swimmer

    Comment


    • #3
      Now you are writing here a literal "fasta" string on the end of every line. I doubt whether that's what you have in mind. What about this?


      Code:
      from Bio import SeqIO
      
      out = open("try_out.fasta", "a")
      for seq_record in SeqIO.parse("try.fasta", "fasta"):
          out.write(seq_record[5:-6].format("fasta"))
      out.close()
      Note that I changed the "w" in open() to "a" (for append) because you don't want to overwrite the previous record every time again in the loop, right?

      Comment


      • #4
        hey, there

        Hello,

        thanks a lot for the reply!

        I do it like this now, and it works!

        from Bio import SeqIO
        out = open('out.fa','w')
        for seq_record in SeqIO.parse('original.fa','fasta'):
        id = seq_record.id
        seq= str(seq_record.seq)[0:-1]
        out.write('>'+id+"\n"+seq+'\n')
        out.close()

        I think the problem is that the seq have to be string instead of characters.
        Thanks for the help anyway!

        Cheers,

        Sadiexiaoyu

        Comment


        • #5
          That's not how you should write fasta output...

          Comment

          Latest Articles

          Collapse

          • seqadmin
            Understanding Genetic Influence on Infectious Disease
            by seqadmin




            During the COVID-19 pandemic, scientists observed that while some individuals experienced severe illness when infected with SARS-CoV-2, others were barely affected. These disparities left researchers and clinicians wondering what causes the wide variations in response to viral infections and what role genetics plays.

            Jean-Laurent Casanova, M.D., Ph.D., Professor at Rockefeller University, is a leading expert in this crossover between genetics and infectious...
            09-09-2024, 10:59 AM
          • seqadmin
            Addressing Off-Target Effects in CRISPR Technologies
            by seqadmin






            The first FDA-approved CRISPR-based therapy marked the transition of therapeutic gene editing from a dream to reality1. CRISPR technologies have streamlined gene editing, and CRISPR screens have become an important approach for identifying genes involved in disease processes2. This technique introduces targeted mutations across numerous genes, enabling large-scale identification of gene functions, interactions, and pathways3. Identifying the full range...
            08-27-2024, 04:44 AM

          ad_right_rmr

          Collapse

          News

          Collapse

          Topics Statistics Last Post
          Started by seqadmin, Today, 06:25 AM
          0 responses
          13 views
          0 likes
          Last Post seqadmin  
          Started by seqadmin, Yesterday, 01:02 PM
          0 responses
          12 views
          0 likes
          Last Post seqadmin  
          Started by seqadmin, 09-18-2024, 06:39 AM
          0 responses
          14 views
          0 likes
          Last Post seqadmin  
          Started by seqadmin, 09-11-2024, 02:44 PM
          0 responses
          14 views
          0 likes
          Last Post seqadmin  
          Working...
          X