首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IRanges - minoverlap重叠

IRanges - minoverlap重叠
EN

Stack Overflow用户
提问于 2013-03-26 11:35:38
回答 1查看 310关注 0票数 1

我正在尝试使用IRanges将一组范围分组为唯一的集合。我希望至少有100个重叠部分。这不管用。有人能帮我吗?我怀疑这与reduce()的工作方式有关,但我似乎想不出解决方案。

示例:

代码语言:javascript
复制
start.vec<-c(2021,2378,2718,2275)
end.vec<-c(2374,2737,3408,3408)
ir<-IRanges(start.vec,end.vec)
grouped<-subjectHits(findOverlaps(ir,reduce(ir),minoverlap=100))
EN

回答 1

Stack Overflow用户

发布于 2013-03-27 01:18:35

不是100%确定你在找什么,但是如果我

代码语言:javascript
复制
> hits = findOverlaps(ir, minoverlap=100L)

我得到了一个对象,它告诉我哪些查询与哪些主题重叠,哪些查询和主题实际上是相同的范围

代码语言:javascript
复制
> hits
Hits of length 10
queryLength: 4
subjectLength: 4
   queryHits subjectHits 
    <integer>   <integer> 
 1          1           1 
 2          1           4 
 3          2           2 
 4          2           4 
 5          3           3 
 6          3           4 
 7          4           1 
 8          4           2 
 9          4           3 
 10         4           4 

我可以获得一个集合列表,如下所示

代码语言:javascript
复制
> split(subjectHits(hits), queryHits(hits))
$`1`
[1] 1 4

$`2`
[1] 2 4

$`3`
[1] 3 4

$`4`
[1] 1 2 3 4

您可以使用以下命令排除自命中

代码语言:javascript
复制
> hits1 = hits[queryHits(hits) != subjectHits(hits)]

对于提出这些问题,Bioconductor mailing list是一个很好的资源

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

https://stackoverflow.com/questions/15628934

复制
相关文章

相似问题

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