python高级实例教程_Biopython - 高级序列操作

教 程 目 录

在本章中,我们将讨论Biopython提供的一些高级序列特征.

补体和反向补体

核苷酸序列可以是反向补充以获得新的序列.此外,补充序列可以反向补充以获得原始序列. Biopython提供了两种方法来实现这一功能 :  补充和反向补充.这个代码在下面和下面给出;>>> from Bio.Alphabet import IUPAC

>>> nucleotide = Seq('TCGAAGTCAGTC', IUPAC.ambiguous_dna)

>>> nucleotide.complement()

Seq('AGCTTCAGTCAG', IUPACAmbiguousDNA())

>>>

这里,complement()方法允许补充DNA或RNA序列. reverse_complement()方法从左到右补充和反转结果序列.它显示在下面和下面;>>> nucleotide.reverse_complement()

Seq('GACTGACTTCGA',IUPACAmbiguousDNA())

Biopython使用Bio.Data.IUPACData提供的ambiguous_dna_complement变量来做补充操作.>>> from Bio.Data import IUPACData

>>> import pprint

>>> pprint.pprint(IUPACData.ambiguous_dna_complement) {

'A': 'T',

'B': 'V',

'C': 'G',

'D': 'H',

'G': 'C',

'H': 'D',

'K': 'M',

'M': 'K',

'N': 'N',

'R': 'Y',

'S': 'S',

'T': 'A',

'V': 'B',

'W': 'W',

'X': 'X',

'Y': 'R'}

>>>

GC含量

基因组DNA碱基组成(GC含量)预计会显着影响基因组功能和物种生态. GC含量是GC核苷酸的数量除以总核苷酸.

要获得GC核苷酸含量,请导入以下模块并执行以下步骤 :>>> from Bio.SeqUtils import GC

>>> nucleotide = Seq("GACTGACTTCGA",IUPAC.unambiguous_dna)

>>> GC(nucleotide)

50.0

转录

转录是将DNA序列转换为RNA序列的过程.实际的生物转录过程是执行反向互补(TCAG→CUGA)以获得mRNA,将DNA视为模板链.然而,在Biopython中的生物信息学中,我们通常直接使用编码链,我们可以通过将字母T更改为U来获得mRNA序列.

以上的简单示例如下跟随 : 去;>>> from Bio.Seq import Seq

>>> from Bio.Seq import transcribe

>>> from Bio.Alphabet import IUPAC

>>> dna_seq = Seq("ATGCCGATCGTAT",IUPAC.unambiguous_dna) >>> transcribe(dna_seq)

Seq('AUGCCGAUCGUAU', IUPACUnambiguousRNA())

>>>

要反转转录,T将更改为U,如下面的代码所示 :>>> rna_seq = transcribe(dna_seq)

>>> rna_seq.back_transcribe()

Seq('ATGCCGATCGTAT', IUPACUnambiguousDNA())

要获得DNA模板链,将反转录的RNA反向补充为给出以下 :>>> rna_seq.back_transcribe().reverse_complement()

Seq('ATACGATCGGCAT',IUPACUnambiguousDNA())

翻译

翻译是将RNA序列翻译成蛋白质序列的过程.考虑如下所示的RNA序列 :>>> rna_seq = Seq("AUGGCCAUUGUAAU",IUPAC.unambiguous_rna)

>>> rna_seq

Seq('AUGGCCAUUGUAAUGGGCCGCUGAAAGGGUGCCCGAUAG',IUPACUnambiguousRNA())

现在,将translate()函数应用于上面和下面的代码;>>> rna_seq.translate()

Seq('MAIV',IUPACProtein())

上述RNA序列很简单.考虑RNA序列,AUGGCCAUUGUAAUGGGCCGCUGAAAGGGUGCCCGA并应用translate() :>>> rna = Seq('AUGGCCAUUGUAAUGGGCCGCUGAAAGGGUGCCCGA',IUPAC.unambiguous_rna)

>>> rna.translate()

Seq('MAIVMGR * KGAR',HasStopCodon(IUPACProtein(),'*'))

这里,停止密码子用星号'*'表示.

在translate()方法中可以在第一个终止密码子处停止.要执行此操作,您可以在translate()中指定to_stop = True,如下所示 :>>> rna.translate(to_stop = True)

Seq('MAIVMGR',IUPACProtein())

这里,终止密码子不包含在结果序列,因为它不包含一个.

翻译表

NCBI的遗传代码页面提供了Biopython使用的翻译表的完整列表.让我们看一下标准表的示例来可视化代码 :>>> from Bio.Data import CodonTable

>>> table = CodonTable.unambiguous_dna_by_name["Standard"]

>>> print(table)

Table 1 Standard, SGC0

| T       | C       | A       | G       |

--+---------+---------+---------+---------+--

T | TTT F   | TCT S   | TAT Y   | TGT C   | T

T | TTC F   | TCC S   | TAC Y   | TGC C   | C

T | TTA L   | TCA S   | TAA Stop| TGA Stop| A

T | TTG L(s)| TCG S   | TAG Stop| TGG W   | G

--+---------+---------+---------+---------+--

C | CTT L   | CCT P   | CAT H   | CGT R   | T

C | CTC L   | CCC P   | CAC H   | CGC R   | C

C | CTA L   | CCA P   | CAA Q   | CGA R   | A

C | CTG L(s)| CCG P   | CAG Q   | CGG R   | G

--+---------+---------+---------+---------+--

A | ATT I   | ACT T   | AAT N   | AGT S   | T

A | ATC I   | ACC T   | AAC N   | AGC S   | C

A | ATA I   | ACA T   | AAA K   | AGA R   | A

A | ATG M(s)| ACG T   | AAG K   | AGG R   | G

--+---------+---------+---------+---------+--

G | GTT V   | GCT A   | GAT D   | GGT G   | T

G | GTC V   | GCC A   | GAC D   | GGC G   | C

G | GTA V   | GCA A   | GAA E   | GGA G   | A

G | GTG V   | GCG A   | GAG E   | GGG G   | G

--+---------+---------+---------+---------+--

>>>

Biopython使用此表将DNA转化为蛋白质以及找到终止密码子.

相关新手教程:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值