Извлечение генного местоположения из файла FASTA - PullRequest
0 голосов
/ 28 мая 2019

Я пытаюсь извлечь местоположение гена из файла fasta с помощью BioPython, но функция .location не работает. Я хотел бы избегать регулярных выражений, потому что эта функция должна работать с разными файлами, и все они имеют несколько разные заголовки.

Заголовок выглядит так: > X днк: хромосома хромосома: GRCh38: X: 111410060: 111411807: -1

Я бы хотел, чтобы результат был: начало = 111410060 конец = 111411807

1 Ответ

1 голос
/ 28 мая 2019

Если заголовки ваших различных файлов fasta всегда заканчиваются на ' ... chr: start: end: strand ', а различные части разделяются на ': ', вы можете попробуйте разделить .description на .split(":") и выбрать предпоследнюю и предпоследнюю позицию результирующего списка.

С вашим примером заголовка у меня работает следующее:

from Bio import SeqIO
path = 'fasta_test.fasta'
records = SeqIO.parse(open(path), 'fasta')
record = next(records)
parts = record.description.split(":")
print('start =', parts[-3], 'end =', parts[-2])
...