问题标签 [sequence-alignment]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
string - 序列比对
我有以下关于序列比对的问题:
我们知道,当您想要强制两个序列在其整个长度上对齐时,全局对齐算法很有用,而局部对齐会找到两个序列之间相似性最高的一个或多个区域,并从那里向外构建对齐。
当我们有一个非常长的序列和一个小序列文库时,在文库中找到小序列连接的最佳算法是什么,以最小化比对成本?
python - 多序列比对(最长公共子序列)?
好的,这就是我想要做的:
获取两个以上的字符串并“对齐”它们(没有 DNA/RNA 序列等,只是常规字符串,每个字符串都不像 1000 个项目)
我已经完成了一些成对对齐(对齐两个字符串)的工作,但是当我尝试对齐多个字符串时,“间隙”给我带来了一些问题。
示例(我目前正在测试的一个):
还有另一个(更具说明性的)示例:
我目前在做什么:
- 对字符串进行排序(较长的字符串在列表中排在第一位)
- 对齐第一对:AB 并得到结果(比方说
R1
) - 然后对齐第二对:
R1
和C
(结果R2
) - 然后对齐第三对:
R2
和D
- 等等...
那么你的想法是什么?我怎么能去呢?有没有更好的办法?(当然,必须有……)
我宁愿在 Perl/Python 或类似的东西中这样做,但是任何类型的代码/参考都会受到欢迎!:-)
r - 将序列对齐打印到文件
我使用 Bioconductor 中的 Biostrings 包中的 pairwiseAlignment 进行简单的成对 DNA 序列比对:
输出如下所示:
对于非常长的序列,输出被截断,只显示一行:
如何将完整对齐输出到文本文件?
bioinformatics - 打印 MultipleSeqAlignment 对象
我有一个由 3 个序列生成的比对clustalx
我可以通过 Biopython 中的预定义索引对对齐进行切片align[:,:4]
但是,打印结果会给出:
如何在不打印下面给出的名称的情况下捕获子对齐?
align[:,:4].seq
不提供我正在寻找的输出。
java - 蛋白质序列显示
我正在尝试在大学研究项目的 Java 应用程序中显示蛋白质序列比对。我的想法是在每个单元格中使用带有 JLabel 的 JTable 来保存序列中的氨基酸。我需要能够更改背景颜色、文本颜色并驱动每个单元格事件。有一个更好的方法吗?
r - 寻找算法来做长的成对的核苷酸比对
我正在尝试扫描可能的SNPs
并将indels
支架与参考基因组的子序列对齐。(原始读数不可用)。我正在使用R/bioconductor
Biostrings 包中的 `pairwiseAlignment 函数。这对于较小的脚手架工作得很好,但是当我尝试将 56kbp 脚手架与错误消息对齐时失败了:
QualityScaledXStringSet.pairwiseAlignment 中的错误(模式 = 模式,:无法分配大小为 17179869183.7 Gb 的内存块
我不确定这是否是错误?; 我的印象是Needleman-Wunsch algorithm
used bypairwiseAlignment
是一个O(n*m)
我认为意味着计算需求在3.1E9
操作顺序上的(56K * 56k ~= 3.1E9)
。似乎Needleman-Wunsch
相似度矩阵也应该占用 3.1 gigs 的内存。不确定我是否没有正确记住 big-o 符号,或者这实际上是在给定R scripting
环境开销的情况下构建对齐所需的内存开销。
有没有人建议使用更好的对齐算法来对齐更长的序列?已经使用 BLAST 完成了初始比对,以找到要比对的参考基因组区域。我BLAST
对正确放置插入缺失的可靠性并不完全有信心,而且我还没有找到与 biostrings 提供的用于解析原始 BLAST 对齐的 API 一样好的 API。
顺便说一句,这是一个复制问题的代码片段:
较短的对齐(数百个碱基)不会发生该错误。我还没有找到错误开始发生的长度截止
algorithm - 具有最小子序列长度约束的序列比对
如何实现具有最小子序列长度约束的序列比对。例如,让这些输入的最小子序列长度为 3。使用 Smith-Waterman 给出如下输出。
但相反,我需要像下面这样。
是否有一个已知的算法,或者你知道一种方法?
提前致谢。
python - 从多个序列比对中输出相同的列
你好。我正在编写一个函数来查找相同的对齐列,然后将这些列存储在字典中,这样键应该是列(作为字符串),值是包含列索引的列表。我遇到了一些困难。我当前的代码只能进行一种对齐:
我不知道如何从这里开始。
输出应该是一个字典,其中包含相同的对齐列作为键和相同列的索引作为值。
python - 通过递归调用寻找路径:最佳字符串对齐
所以我以前试过问这个,但我想我对我要找的东西还不够清楚。我正在制作一个最佳的字符串对齐算法,它实际上只是一个动态编程问题。所以我决定递归地写它。该计划由两部分组成:
- 找到两个单词之间的“编辑距离”,您可以根据一些相关成本最小化对齐。例如,对齐同一个字母的成本为 0,对齐两个元音的成本为 0.5,但对齐一个字母与间隙的成本为 1。
- 可视化对齐方式:即将字符串彼此叠放,字符和间隙的最佳对齐方式。
我认为我的编辑距离有效。我得到了与同龄人相同的价值观,而且似乎没有直接的问题。但是,我很难弄清楚如何恢复匹配、插入和删除的序列以可视化对齐。我的问题来自这样一个事实,即我有一个递归函数,它至少需要三个递归调用。所以,我最终得到了一个比必要的更长的序列,因为每个递归调用都附加了一个“移动”(匹配、插入、删除),它可能不会被使用,因为它不是成本最低的一个。
这是我的代码:
所以,是的,我知道我所拥有的东西不起作用。我的全局newseq
变量当前的长度为 1,因为我尝试通过删除递归调用期间发生的所有附加来重置它。如何设置一种方法来记录构成与此递归算法的最佳对齐的“移动”序列?
编辑:这是我的 memoize 装饰器功能:
r - 在 R 中一次遍历 10 列
我有一个包含 1000 列的数据框。我试图一次循环超过 10 列,并使用包中的seqdef()
函数TraMineR
对这些列中的数据进行序列对齐。因此,我想将此函数应用于第一次复飞中的第 1-10 列,以及第二次复飞中的第 11-20 列,一直到 1000。
这是我正在使用的代码。
但是,这只循环前 10 个然后停止。如何在 10 列的块中循环它?