comparing and finding overlap range in R -
i have 2 tables each of them including range of numbers. 1 table subdivision of other. want create binary column in first table shows in range overlapped.
for example:
df1: start1 end1 1 6 6 8 9 12 13 15 15 19 19 20 df2: start2 end2 2 4 9 11 14 18
result: result first table column shows if overlap exists.
start1 end1 overlap 1 6 1 6 8 0 9 12 1 13 15 1 15 19 1 19 20 0
thanks.
you may seek foverlaps
data.table
library(data.table) setkey(setdt(df1), start1, end1) setkey(setdt(df2), start2, end2) df1[,overlap:=foverlaps(df1, df2, which=true)[, !is.na(yid),]+0] df1 # start1 end1 overlap #1: 1 6 1 #2: 6 8 0 #3: 9 12 1 #4: 13 15 1 #5: 15 19 1 #6: 19 20 0
r overlap
No comments:
Post a Comment