问题标签 [genomicranges]

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 投票
1 回答
62 浏览

r - 滚动连接以查找基因组区域

快速版本是我想在某些值的一定距离内找到所有匹配项。例子:

这有效,但只返回第一个匹配项。我现在的目标是找到所有匹配项(在指定的 50 范围内)。预期输出:

注意loc.3p130 也应该与loc.5p132 和 132 匹配。

怎么做?我需要为下一组操作保留分数。


生物信息学版本,我试图找到所有下游 5' 读取到一定距离(在同一条链中)。对于这个例子,我只使用“+”链,但对于“-”链我也必须这样做。由于这将针对数百万次读取完成,data.table因此似乎是合适的。我调查了GenomicRanges但保留两组数据(5' 和 3' 位置)的元数据有点复杂。

0 投票
0 回答
266 浏览

r - 调用 getPromoterSeq(GenomicFeatures 包)后,密钥 112(char 'p')不在 Biostrings 的查找表中

尝试通过 getPromoterSeq(GenomicFeatures 包)从 TxDb.Hsapiens.UCSC.hg19.knownGene 获取启动子序列时失败

结果如下:

我搜索有关此错误的其他讨论。当人们试图加载序列文件时,似乎有非 T、C、G、A 序列,主要是序列文件中的“p”。虽然在这里我什至没有在本地提供序列,但它全部来自包。

0 投票
0 回答
224 浏览

r - 将一个 Granges 对象的多个元数据列的分数聚合到另一个上

我有一个带有数千个分数列(tomap)的 GRanges 对象,另一个带有感兴趣区域且没有元数据(roi)的对象。我正在尝试将tomap中每一列的最大分数映射到roi中的相应间隔。

我还想保留分数列的名称(在我的真实数据中,这些名称是有意义的,不能像 score1、score2 等那样概括)。我可以为特定的列做到这一点,但正在努力将其推广到每一列。

这是我到目前为止所得到的:

如您所见,这在我单独指定每个分数列时有效,但是如何为数千列执行此操作?

0 投票
1 回答
581 浏览

r - 无效类“GRanges”对象:1:“x@seqnames”与“x”不平行

这个简单的代码:

失败并出现相当神秘的异常:

validObject(.Object) 中的错误:无效类“GRanges”对象:1:“x@seqnames”不平行于“x”无效类“GRanges”对象:2:“x@strand”不平行于“x”

此外,当我尝试提供seqlengths

我得到:

.normargSeqlengths(seqlengths, seqnames) 中的错误:提供的“seqlengths”的长度必须等于序列的数量

这表明在此过程中丢弃了一些数据。但我无法弄清楚它为什么会发生。

对于这里发生的事情的任何见解,我将不胜感激。

环境:

0 投票
0 回答
51 浏览

r - data.table foverlaps 如何从 x 和 y 返回所有范围?

我想使用 foverlaps() 来执行重叠范围连接。我遇到的一个问题是该maxgap参数尚未实现,我只是注意到即使选择type = "any", mult="all". 看这里:

注意第一行range_two是如何在 foverlaps 结果中丢失的。

如何确保返回双方的所有范围,无论它们是完全重叠还是部分重叠,还是根本不重叠?

0 投票
2 回答
248 浏览

r - 如何从 GenomicRanges 对象中获取不同/唯一的行

我用这个创建了以下GenomicRanges对象:

看起来像这样:

我想要做的是从那里获得唯一的行,产生这个(手工编码)

我怎样才能做到这一点?实际上,我有大约 900 万行要处理。

我可以使用这种方法,但速度很慢:

0 投票
1 回答
54 浏览

r - 在 GenomicRanges 中查找岛屿

在 GenomicRanges 中,一个有趣的问题是基因岛的识别。

我试图找到相邻范围不超过一定距离的最大范围子集。为了解决这个问题,我尝试根据各个范围之间的差异来分配组。

我在 IRanges 包中搜索了合适的方法,但到目前为止我还没有成功。

根据分配的组,可以找到最大的组。你知道任何更好的解决方案,避免 for 循环吗?

0 投票
2 回答
99 浏览

r - R:计算每个间隔的唯一元素

假设我有一个不重叠的基因组区间列表。

以及与不同样本相关的基因组位置列表:

我的目标是计算每个间隔的唯一样本数。在我的真实数据集中,间隔表是 ~400.000 行,基因组位置样本表是 ~30.000 行。

该计算嵌入在模拟中,因此它应该尽可能快。我已经尝试过使用 GenomicRanges 作为:

结果是

然而,它仍然会在没有样本的情况下下降间隔(201-300),而且速度也不是很快。使用我的数据集:

我想知道是否有更好更快的方法来进行这种分析?

谢谢


可重现的数据集:

编辑

与我的真实数据集大小相同的可重现数据集

0 投票
0 回答
122 浏览

r - R 中的 GenomicFeatures 函数“transcriptsByOverlaps()”出错

由于 subseq() 函数和 DNAString 函数(来自 biomaRt),我从染色体 1 中检索了 DNA 序列,我的目标是找到该序列中所有可能的转录本。

我想找到 GRange 对象“Txdb”(人类染色体 1 的所有转录本)和我之前获得的 DNA 序列(我必须构建一个 Grange 对象,开始和结束位置进入 chr1)之间的重叠函数transcriptsByOverlaps()

这是代码:

我什至运行了我在 transcriptsByOverlaps() 函数的帮助中找到的示例,它得到了同样的错误:

有人可以帮忙吗?我阅读了帮助,但我不明白如何解决这个问题。谢谢你。

这是 SessionInfo()

0 投票
1 回答
625 浏览

r - 在 GenomicRanges 对象中合并具有相同属性的相邻 bin

已经将基因组分割成相邻的非重叠箱,例如通过tileGenome,我已经通过某种方式为每个箱计算了一些属性(比如 1 或 2)。

现在我想合并具有相同属性的相邻。一个最小的例子如下所示:

前 4 个 bin 的属性为 1,因此应合并为一个 bin。

我浏览了GRanges文档,找不到明显的本机解决方案。请注意,seqname必须考虑边界(例如 chr1 和 chr2 保持分离,而与属性无关) 显然,我可以使用循环,但我宁愿使用本机 GRange 解决方案,例如union我可能已经监督使用的解决方案。

所需的输出应如下所示: