Если вы действительно хотите, чтобы Time
были заказаны в соответствии с запросом, в базе R вы можете сделать
dat <- with(dat, {dat <- dat[Time <= 5, ];dat[order(ID, Time), ]})
dat
# ID Time Expectation
# 2 NJL.1 1 0.1
# 3 NJL.1 2 0.1
# 1 NJL.1 3 0.1
# 4 NJL.1 4 0.1
# 6 NJL.1 5 100.0
# 12 NJL.2 1 0.1
# 16 NJL.2 2 6.0
# 13 NJL.2 3 0.1
# 15 NJL.2 4 0.1
# 17 NJL.2 5 0.1
# 22 NJL.3 1 0.1
# 23 NJL.3 2 0.1
# 21 NJL.3 3 0.1
# 24 NJL.3 4 0.1
# 26 NJL.3 5 10.0
Данные
dat <- structure(list(ID = c("NJL.1", "NJL.1", "NJL.1", "NJL.1", "NJL.1",
"NJL.1", "NJL.1", "NJL.1", "NJL.1", "NJL.1", "NJL.2", "NJL.2",
"NJL.2", "NJL.2", "NJL.2", "NJL.2", "NJL.2", "NJL.2", "NJL.2",
"NJL.2", "NJL.3", "NJL.3", "NJL.3", "NJL.3", "NJL.3", "NJL.3",
"NJL.3", "NJL.3", "NJL.3", "NJL.3"), Time = c(3L, 1L, 2L, 4L,
6L, 5L, 10L, 8L, 9L, 7L, 10L, 1L, 3L, 6L, 4L, 2L, 5L, 8L, 9L,
7L, 3L, 1L, 2L, 4L, 6L, 5L, 10L, 8L, 9L, 7L), Expectation = c(0.1,
0.1, 0.1, 0.1, 0.1, 100, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1,
0.1, 6, 0.1, 7, 8, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 10, 0.1, 0.1,
0.1, 0.1)), row.names = c(NA, -30L), class = "data.frame")