biopython笔记 -- 创建SeqRecord()
来源:互联网 发布:php采集 编辑:程序博客网 时间:2024/06/07 23:39
Sequence Record
– 来自biopython中文版笔记: biopython-创建SeqRecord
- 直接使用SeqRecord()创建序列:
>>> from Bio.Seq import Seq>>> myseq = Seq("GATC")>>> myseqSeq('GATC', Alphabet())>>> from Bio.SeqRecord import SeqRecord>>> myseq_record1 = SeqRecord(myseq) # SeqRecord传入由Seq类创建的序列myseq>>> myseq_record1SeqRecord(seq=Seq('GATC', Alphabet()), id='<unknown id>', name='<unknown name>', description='<unknown description>', dbxrefs=[])>>> myseq_record1.seq # 返回序列本身, 与myseq返回的结果相同Seq('GATC', Alphabet())
SeqRecord类的其他属性:
.id, .name, .descirption, .annotation, .letter_annotation (更多参数说明: help(SeqRecord))
这些属性未赋值时则默认为”unknown”, 它们可在初始化时赋值:
>>> myseq_record2 = SeqRecord(myseq, id="AB12345", name="myseqname")>>> myseq_record2SeqRecord(seq=Seq('GATC', Alphabet()), id='AB12345', name='myseqname', description='<unknown description>', dbxrefs=[]) # id, name, description属性为字符串类型>>> myseq.id'AB12345'
也可初始化之后再赋值:
>>> myseq_record2.description = "Made up sequence I wish I could write a paper about" >>> myseq_record2.annotations["evidence"] = "None. I just made it up." # 属性annotation是以信息名为键, 信息内容为值的字典 >>> myseq_record2.letter_annotations["phred_quality"] = [40,40,38,30] # letter_annotations是对序列每个碱基(字母)注释, 注释信息的名称为字符串, 注释内容可以为列表, 元组, 或字符串, 且序列长度应该与注释内容的元素个数相同>>> myseq_record2.letter_annotations["phred_quality"] = (40,40,38,30)>>> myseq_record2.letter_annotations["phred_quality"] = "F<FA"
根据fasta/Genbank文件创建SeqRecord
biopython上作为练习的fasta文件:NC_005816.fna 和 genbank文件: NC_005816.gb
1) 读取文件: 由Bio.SeqIO模块中的Bio.SeqIO.read()函数读取,第一个属性为fasta/Genbank文件名,第二个属性为文件类型(fasta/genbank);
>>> from Bio import SeqIO>>> record_fa = SeqIO.read("filename.fasta", "fasta") # 一个序列?多个序列?>>> record_gb = SeqIO.read("filename.gb", "genbank")
2) 获取序列本身, id, name等:
>>> record_fa.seq # 注意: 对于fasta文件, Bio.SeqIO默认为通用字母表, 若已知fasta文件序列类型可自定义Seq('TGTAACGAACGGTGCAATAGTGATCCACACCCAACGCCTGAAATCAGATCCAGG...CTG', SingleLetterAlphabet())>>> record_gb.seq # 注意: 对于genbank文件, Bio.SeqIO自动识别序列类型Seq('TGTAACGAACGGTGCAATAGTGATCCACACCCAACGCCTGAAATCAGATCCAGG...CTG', IUPACAmbiguousDNA())>>> record_fa.id>>> record_gb.name>>> record_fa.annotations # 文件不含注释内容时, 返回空{}>>> record_gb.annotations # 含注释时, 返回字典形式的注释内容
阅读全文
0 0
- biopython笔记 -- 创建SeqRecord()
- biopython的安装
- windows10 安装pip biopython
- 生物信息-004-Biopython从NCBI搜索和取回数据库记录
- 创建filter笔记
- java创建Xml笔记
- DDraw笔记-创建表面
- Maven创建项目笔记
- Live555笔记:创建SDP
- plsql 创建语句笔记
- libevent笔记-创建event_base
- github创建个人主页笔记
- [QT笔记]创建快捷方式
- centos vsftpd 创建 笔记
- note_cloud--创建笔记
- angular2--笔记--表单创建
- 创建多线程笔记
- 1 笔记:数据库创建
- Upload
- 从啤酒和尿布讲关联规则,大数据集处理算法Apriori以及改进的PCY算法
- erlang中文编码
- 文章标题
- js其他类型转字符串
- biopython笔记 -- 创建SeqRecord()
- Linux学习笔记一
- 【牛客网】直通bat-面试算法精品课_第2章 排序 2.10 基数排序练习题(JAVA版)
- mysql权限操作语句
- jsp页面把获取的map数据转换成json格式的数据来使用
- python import matplotlib.pyplot 提示找不到DLL
- Apache POI
- listview简单实现侧滑删除仿QQ
- C++正则表达式提取匹配到的字符串