获取以下通用数据
A <- c(5,7,11,10,23,30,24,6)
B <- c(1,2,3,1,2,3,1,2)
C <- data.frame(A,B)
以及以下间隔
library(intervals)
interval1 <- Intervals(
matrix(
c(
5, 15,
15, 25,
25, 35,
35, 100
),
ncol = 2, byrow = TRUE
),
closed = c( TRUE, FALSE ),
type = "Z"
)
rownames(interval1) <- c("A","B","C", "D")
interval2 <- Intervals(
matrix(
c(
0, 10,
12, 20,
22, 30,
30, 100
),
ncol = 2, byrow = TRUE
),
closed = c( TRUE, FALSE ),
type = "Z"
)
rownames(interval2) <- c("P","Q","R", "S")
现在我想创建以下输出表
因此,当 A 值与两个 inverval 重叠时,我想将所有数据“复制”到下面的一行。
我们还介绍data$X
哪一个是interval1
值和data$y
哪一个是interval2
价值。
如果数据不适合任何间隔,我想将其从 data.frame 中删除
我不确定是否break()
函数会更好地用于创建间隔,或者如果dplyr
函数可用于制作重复数据行