Откройте и проанализируйте несколько файлов .fasta из папки с параметром для l oop и последовательностью печати / извлечения (python) - PullRequest
0 голосов
/ 20 января 2020

Я хочу напечатать идентификатор и последовательности нескольких файлов .fasta и дополнительно поместить их в массив, но у меня возникла проблема с получением доступа к самой последовательности. Я поиграл с SeqIO из Bio python, чтобы проанализировать файлы .fasta, и попытался через os и glob получить доступ к файлам в папке. Что я делаю здесь не так, я действительно борюсь с кодом, так как у меня нет большого опыта программирования. Я не получаю код ошибки здесь, но там также ничего не напечатано. Любой совет?

from Bio import SeqIO
import os,glob
folder_path = ('genome_nucseq_unique/data/')
for seq_record in SeqIO.parse(glob.glob(os.path.join(folder_path, '*.fasta')), "fasta"):
    print(seq_record.id)
    print(seq_record.id)

1 Ответ

0 голосов
/ 23 января 2020

SeqIO.parse ожидает объект str, bytes или os.PathLike, а не list как glob.glob(). Измените свою функцию следующим образом:

from Bio import SeqIO
import os, glob
folder_path = 'genome_nucseq_unique/data/'
fasta_paths = glob.glob(os.path.join(folder_path, '*.fasta'))
for fasta_path in fasta_paths:
    print(fasta_path)
    for seq_record in SeqIO.parse(fasta_path, "fasta"):
        print(seq_record.id)
        print(seq_record.seq)
        print()
...