2014-11-04 5 views
1

Im Bioscthon을 사용하여 NCI 페이지에서 GI (71743840)가있는 단백질에 해당하는 DNA 서열을 검색하려고 시도합니다.이 작업은 매우 쉽습니다. refseq. 파이썬에서 코딩 할 때 ncbi 가져 오기 유틸리티를 사용하여 문제가 발생합니다. DNA로 이동하는 데 도움이되는 필드를 검색하는 방법을 찾을 수 없습니다.단백질의 유전자 식별자를 사용하여 DNA 서열 검색

handle = Entrez.efetch(db="nucleotide", id=blast_record.alignments[0].hit_id, rettype="gb", retmode="text") 
seq_record=SeqIO.read(handle,"gb") 

seq_record.features에 많은 정보가있다, 그러나이 작업을 수행 할 수있는 쉽고 확실한 방법이 있어야는, 어떤 도움을 주시면 감사하겠습니다. Thnx!

+0

blast_record.alignments [0]이 미안 – Harpal

+0

아, .hit_id' '의 값이 무엇인지,이 경우에는, 단백질의 GI jsut은 "71743840" –

답변

0

당신은 SeqRecord의 주석에 액세스를 시도 할 수 있습니다 : "가입의 NM_000673.4 나온 RefSeq"당신이 그 주석을 구문 분석 할 수있는 경우

지금 보면

seq_record=SeqIO.read(handle,"gb") 
nucleotide_accession = seq_record.annotations["db_source"] 

귀하의 경우 nucleotide_accession에서입니다. 단이 테스트 케이스 :

nucl_id = nucleotide_accession.split()[-1] 

handle = Entrez.efetch(db="nucleotide", 
         id=nucl_id, 
         rettype="gb", 
         retmode="text") 
seq_record = SeqIO.read(handle, "gb")