问题标签 [bioinformatics]

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.

0 投票
3 回答
1198 浏览

bioinformatics - 评估 BLASTn 分数的重要性?

我正在运行独立的命令行爆炸以将许多查询序列与大型数据库核苷酸序列对齐。我可以修改blastn程序的命令行参数来改变匹配/不匹配分数等各种参数。

我想知道 - 对于 blastn 输出的“位分数”,比较具有相同查询和数据库序列但不同匹配/不匹配参数的对齐的位分数是否有意义?我正在尝试评估爆破在各种参数值下的表现如何,但我想确保所有内容都在公平的基础上进行比较。谢谢。

0 投票
4 回答
2467 浏览

bioinformatics - multiFASTA 文件处理

我很想知道是否有任何生物信息学工具能够处理 multiFASTA 文件,为我提供序列数量、长度、核苷酸/氨基酸含量等信息,并可能自动绘制描述图。也可以使用 R BIOconductor 解决方案或 BioPerl 模块,但我没有找到任何东西。

你能帮助我吗?非常感谢 :-)

0 投票
1 回答
968 浏览

r - 快速评估损坏的 Affymetrix CEL 文件

我正在尝试使用 R 规范化大量 Affymetrix CEL 文件。但是,其中一些似乎被截断,所以在阅读它们时我得到了错误

并且正常化停止。每次手动删除损坏的文件并重新启动将需要很长时间。您知道是否有一种快速的方法(在 R 中或使用工具)来检测损坏的文件?

PS 我 99.99% 确定我正在将来自同一平台的 CEL 归一化,它实际上只是截断的文件 :-)

0 投票
7 回答
4457 浏览

python - 在 Python 中划分大文件以进行多处理的最佳方法是什么?

我遇到了很多我想与multiprocessing模块并行的“令人尴尬的并行”项目。但是,它们通常涉及读取大文件(大于 2gb),逐行处理它们,运行基本计算,然后写入结果。使用 Python 的多处理模块拆分文件并处理它的最佳方法是什么?应该使用Queue还是JoinableQueue使用multiprocessing?还是Queue模块本身?或者,我应该使用 将可迭代的文件映射到进程池multiprocessing吗?我已经尝试过这些方法,但是逐行分发数据的开销是巨大的。我已经通过使用确定了一个轻量级管道过滤器设计cat file | process1 --out-file out1 --num-processes 2 | process2 --out-file out2,它通过了第一个过程的一定百分比'),但我希望有一个完全包含在 Python 中的解决方案。

令人惊讶的是,Python 文档并没有建议这样做的规范方法(尽管multiprocessing文档中关于编程指南的部分很长)。

谢谢,文斯

附加信息:每行的处理时间各不相同。有些问题很快,几乎不受 I/O 限制,有些受 CPU 限制。受 CPU 限制的非依赖任务将从并行化中获得优势,因此即使将数据分配给处理功能的低效方式在挂钟时间方面仍然是有益的。

一个典型的例子是一个脚本,它从行中提取字段,检查各种按位标志,并将带有某些标志的行以全新格式写入新文件。这似乎是一个 I/O 绑定问题,但是当我使用带有管道的廉价并发版本运行它时,它快了大约 20%。当我使用池和地图运行它时,或者在其中排队时,multiprocessing它总是慢 100% 以上。

0 投票
4 回答
1461 浏览

regex - 酶促切割是否存在正则表达式?

蛋白质序列的(理论上)胰蛋白酶切割是否存在正则表达式?胰蛋白酶的切割规则是:在 R 或 K 之后,但不在 P 之前。

例子:

序列的切割VGTKCCTKPESERMPCTEDYLSLILNR应产生以下 3 个序列(段):

请注意,在第二个肽段中 K 之后没有切割(因为 P 在 K 之后)。

在 Perl 中(它也可以在 C#、Python 或 Ruby 中):

我使用了这种解决方法(其中首先在序列中插入一个剪切标记 =,如果 P 紧接在剪切标记之后,则再次删除):

但这需要修改一个可能很长并且可能有数百万个序列的字符串。有没有一种方法可以将正则表达式与拆分一起使用?如果是,正则表达式是什么?


测试平台:Windows XP 64 位。ActivePerl 64 位。来自 perl -v:为 MSWin32-x64-multi-thread 构建的 v5.10.0。

0 投票
10 回答
1256 浏览

database - 是否有任何现有的解决方案可以使用网站前端创建通用 DNA 序列数据库?

我想为我工作的实验室创建一个带有网络前端的 rRNA 序列数据库。在生物学中,使用 BLAST 和 HMMER 等比对算法搜索大量序列似乎很常见,所以我想知道是否有是否有任何现有的 php/python/rails 项目允许使用网站搜索表单轻松创建通用序列数据库?

更新GMOD是我正在寻找的服务器类型。我还被建议看一下BioMart,它看起来也有类似的功能。

0 投票
3 回答
7673 浏览

python - 如何从 XML NCBI BLAST 文件中提取第一个命中元素?

我试图只从 NCBI xml BLAST 文件中提取第一个命中。接下来我想只获得第一个 HSP。在最后阶段,我想根据最好成绩获得这些。为了清楚起见,这里有一个 xml 文件的示例:

基本上每个查询搜索都会创建一个迭代元素。每次迭代都可以有多个命中,而这些命中又可以有多个 HSP。我只想获得第一个命中,它是每次迭代的第一个 HSP。如果 BLAST 没有找到命中,我想忽略迭代。我编写了这个简单的代码:

任何帮助将不胜感激!

0 投票
4 回答
735 浏览

python - Python,巨大的迭代性能问题

我正在对 3 个单词进行迭代,每个单词长约 500 万个字符,我想找到识别每个单词的 20 个字符的序列。也就是说,我想在一个单词中找到该单词唯一的所有长度为 20 的序列。我的问题是我编写的代码需要很长时间才能运行。我什至连一个单词都没有完成运行我的程序。

下面的函数获取一个包含字典的列表,其中每个字典包含 20 个可能的单词及其来自 500 万个长单词之一的位置。

如果有人知道如何优化它,我将非常感激,我不知道如何继续......

这是我的代码示例:

0 投票
7 回答
1180 浏览

blogs - 生物信息学资源

什么时候是关于编程的,我们肯定有一些博客可以关注,但是当你想尝试不同的领域时,你怎么能找到大牌呢?

我希望尝试生物信息学领域,并在我的日程安排中添加一些从该领域阅读的博客。你能给我推荐一些博客吗?

0 投票
1 回答
4636 浏览

python - Draw a colored sphere from cartesian coordinates in pymol

I was looking in the wiki how to convert the following information about beads, cartesian coordinates + energy :

23.4 54.6 12.3 -123.5 54.5 23.1 9.45 -56.7 .......

to a draw in pymol that contains for each atom a sphere of radius R, centered on its coordinates, and with color, in a rainbow gradient.

Thanks