【发布时间】:2016-10-19 10:58:06
【问题描述】:
我希望在我的 df 中标记具有重叠范围的行(希望创建重叠列)基于一系列数字变量(Min,Max),如果需要,我可以将其转换为整数:
Class Min Max
A 100 200
A 120 205
A 210 310
A 500 630
A 510 530
A 705 800
转化为:
Class Min Max Overlap
A 100 200 1
A 120 205 1
A 210 310 0
A 500 630 1
A 510 530 1
A 705 800 0
我尝试过 IRange,但没有取得多大成功 - 有什么想法吗?
【问题讨论】:
-
您想成对测试所有区间的重叠吗?你确定你需要这个吗?
-
我认为逻辑可以这样工作:
overlap = [ (minVal > any other min) AND ( minVal < maxVal ) ] OR [ (maxVal < any other max) AND ( maxVal > minVal ) ]对吗? -
有了
IRanges,看来你只需要countOverlaps(IRanges(dat$Min, dat$Max)) - 1
标签: r