| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
- bioinformatics
- Kaggle
- 자바
- 인공지능
- 바이오파이썬
- MERS
- 서열정렬
- 오류역전파
- 생물정보학
- 파이썬
- 캐글
- 바이오인포매틱스
- CNN
- COVID
- AP
- 딥러닝
- BLaST
- 생명정보학
- 인공신경망
- ncbi
- SVM
- 인공지능 수학
- HMM
- 결정트리
- RNN
- Java
- AP Computer Science A
- 블록체인
- 이항분포
- 시그모이드
- Today
- Total
데이터 과학
GenBank 정보 불러오기 본문
실험데이터
바이오파이썬 라이브러리중에서 Seq 클래스 앞에는 서열 레코드를 정의해 주는 SeqRecord 클래스가 있는데 이 명령어는 Bio.SeqRecord 모듈로 정의해서 사용할 수 있습니다.
SeqRecord는 FASTA 형식과 GenBank 파일 형식을 레코드 형식으로 표현하는 방법입니다. 여기서는 SeqIO 명령어를 이용해서 GenBank를 불러오는 방법을 진행해 보겠습니다.
샘플 데이터는 nc_005816.gb 데이터입니다. 현재 NCBI에 올라와 있는 2020년식 데이터는 서열정보가 없어서 2008년 데이터로 간단하게 레코드 확인을 진행합니다.
NCBI에서는 GenBank의 서식을 기본으로 구성이 되어 있어 GenBank 파일 형식을 이해해 보는 것이 좋습니다.
주피터 노트북을 실행해서, nc_005816.gb 업로드를 하고 이후에 파이썬3를 실행해서 실행창에 다음과 같은 명령어를 입력합니다.
>>>from Bio import SeqIO
>>>record = SeqIO.read("nc_005816.gb", "genbank")
>>>record
SeqRecord(seq=Seq('TGTAACGAACGGTGCAATAGTGATCCACACCCAACGCCTGAAATCAGATCCAGG...CTG'), id='NC_005816.1', name='NC_005816', description='Yersinia pestis biovar Microtus str. 91001 plasmid pPCP1, complete sequence', dbxrefs=['Project:58037'])
>>>len(record)
9609
>>>len(record.features)
41
>>> print(record.features[20])
type: gene
location: [4342:4780](+)
qualifiers:
Key: db_xref, Value: ['GeneID:2767712']
Key: gene, Value: ['pim']
Key: locus_tag, Value: ['YP_pPCP05']
>>>print(record.features[21])
type: CDS
location: [4342:4780](+)
qualifiers: Key: codon_start, Value: ['1']
Key: db_xref, Value: ['GI:45478716', 'GeneID:2767712']
Key: gene, Value: ['pim']
Key: locus_tag, Value: ['YP_pPCP05']
Key: note, Value: ['similar to many previously sequenced pesticin immunity protein entries of Yersinia pestis plasmid pPCP, e.g. gi| 16082683|,ref|NP_395230.1| (NC_003132) , gi|1200166|emb|CAA90861.1| (Z54145 ) , gi|1488655| emb|CAA63439.1| (X92856) , gi|2996219|gb|AAC62543.1| (AF053945) , and gi|5763814|emb|CAB531 67.1| (AL109969)']
Key: product, Value: ['pesticin immunity protein']
Key: protein_id, Value: ['NP_995571.1']
Key: transl_table, Value: ['11']
Key: translation, Value: ['MGGGMISKLFCLALIFLSSSGLAEKNTYTAKDILQNLELNTFGNSLSHGIYGKQTTFKQTEFTNIKSNTKKHIALINKDNSWMISLKILGIKRDEYTVCFEDFSLIRPPTYVAIHPLLIKKVKSGNFIVVKEIKKSIPGCTVYYH']
>>>sub_record = record[4300:4800]
>>>sub_record
SeqRecord(seq=Seq('ATAAATAGATTATTCCAAATAATTTATTTATGTAAGAACAGGATGGGAGGGGGA...TTA'), id='NC_005816.1', name='NC_005816', description='Yersinia pestis biovar Microtus str. 91001 plasmid pPCP1, complete sequence', dbxrefs=[])
>>>len(sub_record)
500
>>>len(sub_record.features)
2
>>>print(sub_record.features[0])
type: gene location: [42:480](+) qualifiers:
Key: db_xref, Value: ['GeneID:2767712']
Key: gene, Value: ['pim']
Key: locus_tag, Value: ['YP_pPCP05']
>>>print(sub_record.features[1])
type: CDS location: [42:480](+) qualifiers:
Key: codon_start, Value: ['1']
Key: db_xref, Value: ['GI:45478716', 'GeneID:2767712']
Key: gene, Value: ['pim']
Key: locus_tag, Value: ['YP_pPCP05']
Key: note, Value: ['similar to many previously sequenced pesticin immunity protein entries of Yersinia pestis plasmid pPCP, e.g. gi| 16082683|,ref|NP_395230.1| (NC_003132) , gi|1200166|emb|CAA90861.1| (Z54145 ) , gi|1488655| emb|CAA63439.1| (X92856) , gi|2996219|gb|AAC62543.1| (AF053945) , and gi|5763814|emb|CAB531 67.1| (AL109969)']
Key: product, Value: ['pesticin immunity protein']
Key: protein_id, Value: ['NP_995571.1']
Key: transl_table, Value: ['11']
Key: translation, Value: ['MGGGMISKLFCLALIFLSSSGLAEKNTYTAKDILQNLELNTFGNSLSHGIYGKQTTFKQTEFTNIKSNTKKHIALINKDNSWMISLKILGIKRDEYTVCFEDFSLIRPPTYVAIHPLLIKKVKSGNFIVVKEIKKSIPGCTVYYH']
순차적으로 길이와 관련되어 있는 내용들이 출력되고 있습니다. NCBI에는 자주들 들어가서 보는데 FASTA 파일 형식만 다운 받아서 실험하고 결과만 보려고 하지 말고 GenBank 파일 형식을 보고 해당 파일이 가지고 있는 다양한 정보를 알아봤으면 합니다.
'생명정보학 & 화학정보학 > 바이오파이썬' 카테고리의 다른 글
| 바이오파이썬에서 계통수 그리기 (0) | 2021.08.22 |
|---|---|
| 2021버전 SARS-CoV-2 핵산서열 분석 (1) | 2021.08.15 |
| 바이오파이썬 단백질 분석 : COVID-19 게놈(Genome) (1) | 2021.07.27 |
| COVID-19: Biopython으로 단백질 식별하는 방법 (Kaggle) (1) | 2021.07.18 |
| 슬라이싱 시퀀스 (0) | 2021.07.13 |