The codes which import Biopython and parse the files have worked on my laptop. Now I have a very big file that I can only parse it on another computer which also have installed python and Biopython. But on that computer, it gives me error message. I have uninstalled and reinstalled the latest python and biopython. The problem is still there.
The entire code is:
from Bio import SeqIO with open('/Users/yuewang/work/18s_tree/aligned_fungi_rna.fasta', 'w') as output: output.write('') with open('/Users/yuewang/work/18s_tree/SILVA_132_SSURef_tax_silva_full_align_trunc.fasta') as fastafile: record_iterator = SeqIO.parse(fastafile, 'fasta') fungi = 'Eukaryota;Opisthokonta;Nucletmycea;Fungi;' for record in record_iterator: if fungi in record.id: with open('/Users/yuewang/work/18s_tree/aligned_fungi_rna.fasta', 'a') as output: output.write(record.format('fasta'))
Traceback (most recent call last): File "copy.py", line 1, in <module> from Bio import SeqIO File "/usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/Bio/SeqIO/__init__.py", line 391, in <module> from . import UniprotIO File "/usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/Bio/SeqIO/UniprotIO.py", line 34, in <module> from xml.etree import cElementTree as ElementTree File "/usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/xml/etree/cElementTree.py", line 3, in <module> from xml.etree.ElementTree import * File "/usr/local/Cellar/python/3.7.1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/xml/etree/ElementTree.py", line 1660, in <module> from _elementtree import * File "/Users/yuewang/work/18s_tree/copy.py", line 7, in <module> record_iterator = SeqIO.parse(fastafile, 'fasta') AttributeError: module 'Bio.SeqIO' has no attribute 'parse'
Please let me know if my question is not clear enough.