首页 > 编程语言 >biopython Sequence相关

biopython Sequence相关

时间:2023-03-19 23:35:47浏览次数:45  
标签:Bio Seq seq Sequence biopython myseq messenger print 相关

参考:http://biopython.org/DIST/docs/tutorial/Tutorial.html

1.构建Seq()对象

from Bio.Seq import Seq
myseq = Seq("AGTACACTCA")
print(myseq)  #AGTACACTCA
print(type(myseq)) #<class 'Bio.Seq.Seq'>

 注:Seq()对象与标准python字符串不同。

2.Seq对象支持的方法

2.1 seq()与标准python字符串均支持字符的遍历/长度计算/获取/截取/连接、.count()检索特定字符、.join()、字母大小写转换

from Bio.Seq import Seq
myseq = Seq("AGTACACTCA")
for i, letter in enumerate(myseq): 
    print(i, letter)

print(len(myseq)) #10
print(myseq[0])   #A
print(myseq[0::2])  #ATCCC
print(myseq[::-1])  #ACTCACATGA
print(myseq + Seq("AGTAA")) #AGTACACTCAAGTAA
print(myseq.count("CA")) #2
print(myseq.lower())  #agtacactca

输出结果

0 A
1 G
2 T
3 A
4 C
5 A
6 C
7 T
8 C
9 A
10
A
ATCCC
2

 2.2 计算seq对象的GC含量

from Bio.Seq import Seq
myseq = Seq("AGTACACTCA")
from Bio.SeqUtils import GC
print(GC(myseq)) #40.0

注:biopython 1.80及之后的版本将求GC含量的函数GC改为了gc.fraction

"""
biopython 1.80及之后的版本将求GC含量的函数GC改为了gc.fraction
Bio.SeqUtils.gc_fraction(seq, ambiguous='remove')
返回的序列G+C百分比在0和1之间浮动
Ambiguous核苷酸指的是ATCGSW (S is G or C, and W is A or T)以外的
若ambiguous='remove'(默认),计算GCS在由ATCGSW组成的序列中所在比例
若ambiguous='ignore',计算GCS在由Ambiguous和unAmbiguous核苷酸组成的序列中所在比例
若ambiguous='weighted',在计算歧义核苷酸是会使用平均值,如G and C记为1, N and X记为0.5
"""
from Bio.Seq import Seq
myseq = Seq("AGTACACTCA")
from Bio.SeqUtils import gc_fraction
print(gc_fraction(myseq)) #0.4

 2.3 将Seq对象转换为字符串

from Bio.Seq import Seq
myseq1 = Seq("CACTCA")
print(str(myseq1)) 
print(">name\n%s\n" % myseq1)

输出结果

CACTCA
>name
CACTCA

2.4 获取核苷酸Seq对象的互补序列

from Bio.Seq import Seq
myseq2 = Seq("CGATAA")
print(myseq2.complement()) #GCTATT
print(myseq2.reverse_complement()) #TTATCG

2.5 转录 

from Bio.Seq import Seq
coding_seq = Seq("GCAATCGAT")
template_seq = coding_seq.reverse_complement()
print(template_seq)  #ATCGATTGC
messenger_seq = coding_seq.transcribe() #转录
print(messenger_seq) #GCAAUCGAU
back_messenger_seq = messenger_seq.back_transcribe() #反转录
print(back_messenger_seq) #GCAATCGAT

2.6 翻译

from Bio.Seq import Seq
messenger_seq = Seq("GCAAUCGAUCCGCUGUGAAAAGGGUGA")
"""
默认情况下,翻译将使用标准遗传密码,即table=1
"""
seq1 = messenger_seq.translate()  
print(seq1) #AIDPL*KG*
"""
线粒体序列相关的基因编码
"""
seq2 = messenger_seq.translate(table="Vertebrate Mitochondrial")
print(seq2) #AIDPLWKGW
"""
终止子选项
"""
seq3 = messenger_seq.translate(to_stop=True) #第一次遇到终止子就停止翻译
print(seq3) #AIDPL 
seq4 = messenger_seq.translate(stop_symbol="@") #设置终止子符号
print(seq4) #AIDPL@KG@

2.7 翻译Tables (具体见官网教程

 

标签:Bio,Seq,seq,Sequence,biopython,myseq,messenger,print,相关
From: https://www.cnblogs.com/chaimy/p/17227647.html

相关文章

  • day07-SpringBoot接收参数相关注解
    SpringBoot接收参数相关注解1.基本介绍SpringBoot接收客户端提交数据/参数会使用到相关注解详解@PathVariable、@RequestHeader、@ModelAttribute、@RequestParam、@Co......
  • 最小生成树及相关基础应用
    算法kruskal,这是我春季赛前突击的一个算法,当时我貌似并查集都不怎么会,还是现学的...先说一下这个基础算法的思路吧,先把所有边按照边权排序,把每棵树当作一棵子树,如果他们在......
  • C. Sequence Master
    C.SequenceMasterForsomepositiveinteger$m$,YunQianconsidersanarray$q$of$2m$(possiblynegative)integersgood,ifandonlyifforeverypossibles......
  • D2. Xor-Subsequence (hard version)
    D2.Xor-Subsequence(hardversion)/*进行转换,可以要存储i^a[i]的值首先确保前面都是相同的然后假设下一位是不相同的,那么会在这里进行更新,都枚举一下就可以了字......
  • 数学相关教材介绍
    数学分析数学分析是数学系最重要的一门课,经常一个点就会引申出今后的一门课,并且是今后数学系大部分课程的基础。也是初学时比较难的一门课,这里的难主要是对数学分析思想和......
  • spi调试相关
    https://zhugeyifan.blog.csdn.net/article/details/117388884?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%......
  • Ubuntu18安装Jenkins以及相关环境
    Ubuntu18安装Jenkins一、安装JDKcd/opt/softtar-zxvfjdk-8u333-linux-x64.tar.gz#设置环境变量vim/etc/profile#SetJDKexportJAVA_HOME=/opt/soft/jdk1.8.......
  • 开启vmware虚拟机相关服务
    一、编写.bat脚本我的脚本是start_vmware.bat 结尾一定要是.bat@echooffnetstart"VMwareHostd"netstart"VMnetDHCP"netstart"VMwareNATService"::改成自己的VM......
  • Python的相关练习
    1、计算一段话中的人物名字,并将其列举2、用1234能组成多少个互不相同的且无重复的三位数3、计算今天过了多少天4、从小到大输出三个整数......
  • The Indian World: On the Achievements and Consequences of Stereotypes.-------lea
      Thistimewelearnedapoemnamed"IamnottheIndianinyourmind".ThispoemtellsaboutthestereotypeofIndiansintheworldandtheirviewsonth......