Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何使用基因组范围按区间覆盖率百分比查找重叠_R_Iranges - Fatal编程技术网

R 如何使用基因组范围按区间覆盖率百分比查找重叠

R 如何使用基因组范围按区间覆盖率百分比查找重叠,r,iranges,R,Iranges,我有两个数据帧,一个有两个或更多的个体,由TEST表示,由sampleID表示,另一个由3列组成,称为REF 我想根据REF的chr、start、end列和对应的TEST顺序列(染色体、start、end)之间的重叠,将REF添加到TEST中 我希望重叠的定义是,为了使REF间隔与测试间隔重叠,它必须覆盖>50%的测试间隔 我一直在和你玩。但是,FindVerlap函数只允许我将minOverlap指定为重叠位置的数量,而不是覆盖间隔的一小部分。那么,使用基因组范围,我如何才能做到这一点 一些示

我有两个数据帧,一个有两个或更多的个体,由TEST表示,由sampleID表示,另一个由3列组成,称为REF

我想根据REF的chr、start、end列和对应的TEST顺序列(染色体、start、end)之间的重叠,将REF添加到TEST中

我希望重叠的定义是,为了使REF间隔与测试间隔重叠,它必须覆盖>50%的测试间隔

我一直在和你玩。但是,FindVerlap函数只允许我将minOverlap指定为重叠位置的数量,而不是覆盖间隔的一小部分。那么,使用基因组范围,我如何才能做到这一点

一些示例输入:

REF = structure(list(chr = c("1", "1", "1", "1", "1", "1", "1", "1", 
"1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1"), 
    start = c(766101L, 1627918L, 4421060L, 7324468L, 8053732L, 
    8182462L, 8182584L, 8182584L, 8206130L, 8804237L, 10369546L, 
    10370541L, 10543836L, 10656324L, 12354307L, 12841928L, 12845863L, 
    12909237L, 12909965L, 13444908L), end = c(809773L, 1672603L, 
    4424115L, 7325408L, 8067990L, 8189854L, 8189285L, 8189285L, 
    8209321L, 8812660L, 10377983L, 10377983L, 10545046L, 10657912L, 
    12357076L, 12971833L, 12883096L, 12927107L, 12918079L, 13468022L
    ), Deft = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
    1, 1, 1, 1, 1)), .Names = c("chr", "start", "end", "Deft"
), row.names = c(217L, 568L, 1340L, 1691L, 1804L, 1811L, 1812L, 
1813L, 1819L, 1880L, 2017L, 2020L, 2041L, 2049L, 2224L, 2282L, 
2284L, 2332L, 2335L, 2424L), class = "data.frame")

TEST = structure(list(sampleID = c("SID1331", "SID1331", "SID1331", 
"SID1331", "SID1331", "SID1331", "SID1331", "SID1331", "SID1331", 
"SID1331", "SID1337", "SID1337", "SID1337", "SID1337", "SID1337", 
"SID1337", "SID1337", "SID1337", "SID1337", "SID1337", "SID1337"
), Chromosome = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 10L, 
10L, 11L, 11L, 11L, 11L, 11L, 12L, 12L, 12L, 12L), Start = c(61735L, 
7541291L, 32664866L, 45935056L, 55449273L, 117769301L, 117892183L, 
167580307L, 172458743L, 172852403L, 129495492L, 129526092L, 198572L, 
112837740L, 112847206L, 132105712L, 132126171L, 150442L, 23261653L, 
23270278L, 28135989L), End = c(7539746L, 32664843L, 45934562L, 
55445562L, 117767918L, 117886211L, 167580003L, 172457651L, 172851634L, 
214938359L, 129525791L, 135506704L, 112837593L, 112846803L, 132104437L, 
132122974L, 134944770L, 23261612L, 23268885L, 28131521L, 52920414L
)), .Names = c("sampleID", "Chromosome", "Start", "End"), row.names = c(1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 1000L, 1001L, 1002L, 1003L, 
1004L, 1005L, 1006L, 1007L, 1008L, 1009L, 1010L), class = "data.frame")

考虑一下关于生物导体包的问题,比如生物导体。好的,我也可以问一下,但是我也可以把这个问题留在这里。原则上,最好只在一个地方询问,但是在这种情况下,在每个帖子中,你都可以通过交叉邮寄来表示。