首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >返回所有可能的DNA组合物

返回所有可能的DNA组合物
EN

Stack Overflow用户
提问于 2017-03-23 21:06:24
回答 4查看 230关注 0票数 1

下面的代码给出了所有可能的DNA组合。有没有一种更有效、更清洁的方法来做到这一点?另外,对于任何生物信息学或生物技术程序员,我应该最熟悉哪些模块?

代码语言:javascript
复制
DNA = 'a', 't', 'g', 'c'


lis = []
def all_combos():
    for a in A:
        for t in A:
            for g in A:
                for c in A:  
                    lis.append([a, t, g, c])
    return lis

print(all_combos())
EN

回答 4

Stack Overflow用户

发布于 2017-03-23 21:12:23

我想我在尝试这个的时候被打败了..。只是为了我的统计。

如果你想要的实际上是所有可能的排列(例如,aaag,aaat,aaag,aaac.),您可以以这种方式使用迭代工具:

代码语言:javascript
复制
from itertools import product

print(list(product('atgc', repeat=4)))
票数 2
EN

Stack Overflow用户

发布于 2017-03-23 21:13:50

有一个python函数,用于从列表中生成组合:

itertools.combinations

在这篇文章中,一个人试图列出一个列表的所有组合,每次两个:Python - list the combination pair for a function value

票数 1
EN

Stack Overflow用户

发布于 2017-03-24 10:09:09

作为一个学生的练习,你的代码是可读的,做你想做的事。

我想问题是,为什么你需要所有这些组合?除其他外,实用的生物信息学是文件类型和格式的混乱,您可能会遇到一些输入数据,它们使用的是与您正在使用的不同的字母表。

关于模块,我会提到两个通用的用途。剩下的则取决于你想要完成的具体任务。Biopython是更成熟和更广泛的支持,但代码基础是它显示它的年龄。scikit-bio是代码块上的新一代,具有漂亮的、经过充分测试的代码,但功能较少,对晦涩的文件格式的支持也较少。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42986985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档