Возьмите следующие общие данныес использованием интервалов для назначения категориальных значений
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 перекрывает два инверсных значения, я хочу «скопировать» все данные a до строки ниже. Мы также вводим data$X
, который является значением interval1
и data$y
, что является значением interval2
. Если данные не помещаются в любой из интервала, я хочу, чтобы удалить его из data.frame
Я не уверен, что если функция break()
будет лучше использовать для создания интервалов или если функция dplyr
может быть использована чтобы сделать reoccuring строки данных
Я не понимаю. Извините, но ваши объяснения недостаточно ясны. Можете ли вы рассказать о том, как вы получаете 4 первых строки вашего окончательного 'data.frame'? –
Надеюсь, что это прояснит .... значение 5 появляется в интервале 1 как «A», а интервал2 «P» ... значение 7 появляется в интервале 1 как «A» и интервал2 «P». .. значение 11 появляется в интервале 1 как «A», но не в пределах любого интервала2 границ – lukeg
thks! вы хотите использовать пакет с абсолютно интервалом? –