首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >样本间基因组间隔相等

样本间基因组间隔相等
EN

Stack Overflow用户
提问于 2014-07-16 08:46:56
回答 2查看 65关注 0票数 1

我想找到完全相同的基因组间隔之间的样本(NE_id)。

我的意见:

代码语言:javascript
复制
chr  start_call   end_call  NE_id 
chr1    150         200      NE01
chr1    150         200      NE02
chr2    100         150      NE01
chr2    100         160      NE02
chr3    200         300      NE01   
chr3    200         300      NE02

我的预期产出:

代码语言:javascript
复制
chr  start_call   end_call  NE_id 
chr1    150         200      NE01, NE02   
chr3    200         300      NE01, NE02

在这个例子中,chr2基因组间隔有一些重叠,但它不对应于完全相同的基因组间隔(大小差异== 10)。

非常感谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-16 09:13:08

如果dat是数据,您可以尝试:

代码语言:javascript
复制
res <-aggregate(NE_id~., data=dat, FUN=I)
res[sapply(res$NE_id,length)>1,]
#    chr  start_call end_call     NE_id
# 3 chr1        150      200 NE01, NE02
# 4 chr3        200      300 NE01, NE02
票数 2
EN

Stack Overflow用户

发布于 2014-07-16 09:01:30

这里有一个GenomicRanges解决方案

代码语言:javascript
复制
library(GenomicRanges)
NE01 <- GRanges(c("chr1","chr2","chr3"),
         IRanges(c(150,100,200),c(200,150,300)),
         ID=rep("NE01",3))
NE02 <- GRanges(c("chr1","chr2","chr3"),
            IRanges(c(150,100,200),c(200,160,300)),
            ID=rep("NE02",3))
findOverlaps(NE01,NE02,type="equal")

我只需全部输入,因为我没有您的数据框架,您只需在创建GRanges对象时指定数据帧列。

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

https://stackoverflow.com/questions/24776223

复制
相关文章

相似问题

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