Я использую BioPython для циклического открытия открытых кадров чтения в файле GenBank. Более конкретно, я рассматриваю функции, которые аннотируются как «CDS» в GenBank. Так что мой код типа:Как определить кодирующую структуру гена в BioPython
from Bio import SeqIO
gbk_dat = SeqIO.read(genbank_filepath, 'genbank')
for feature in gbk_dat.features:
if feature.type == 'CDS':
# Identify coding frame
мне было интересно, можно ли определить, какой кадр кодирования гена в сравнении целого генома? То есть. если ген начинается в положении 1 генома, он будет в кодирующем кадре 1, если он начинается с 2, в кадре кодирования 2, если в 5, тогда и в кадре 2 и т. д. (я знаю, что я могу сценарировать это относительно легко но мне нравится полагаться на BioPython, поскольку он имеет тенденцию быть более чистым при совместном использовании кода позже.)
Возможно, чтобы уточнить, мой вопрос связан с определением кадров двух перекрывающихся генов. В некоторых случаях это может быть утомительным, поскольку некоторые кодирующие последовательности имеют сдвиг в рамке внутри них (например, последовательность бактериальных prfA). Таким образом, кадр первого кодона, таким образом, может не соответствовать кадру последнего кодона. Мне было интересно, может ли BioPython позаботиться об этом автоматически? –
Когда вы смотрите на файл genbank - есть строка, которая сообщит вам позицию codon_start. Это то, что вы ищете? – cer