等概率碱基序列

问题描述 投票:0回答:1

我想创建一个碱基序列(A,T,G,C),这些碱基都以相同的概率出现。这个序列应该有一个可变的长度n。你能帮助我吗?

python sequence probability
1个回答
3
投票

python 有一个名为 random 来从一个样本中随机选择。

import random
n = 5 # set n
random_list = random.choices(range(4), k=n)
dic = {0:"A", 1:"C", 2:"G", 3:"T"}
bases_list = [dic[v] for v in random_list]
seq = ""
for item in bases_list:
    seq += item

首先,你创建了一个n个随机数的列表,范围都在[0,3]。然后你用字典将数字替换成代表碱基的字符串。

现在,当我们有了一个列表,我只是把它们放在一起,用一个字符串来创建一个序列。这就是最后三行正在做的事情。

作为本网站的一般性说明:对于下一次,请解释你已经尝试过的东西或你遇到的困难。社区很乐意帮助你,但不是为你解决功课的问题

© www.soinside.com 2019 - 2024. All rights reserved.