df набор данных содержит меру времени Difference_last
по каждому SampleID
, Direction
и Type
.
Моя цель состоит в том, чтобы удалить значения выбросов следующим образом: Если Difference_last
больше чемзатем удалите все следующие строки в том же Direction
(= 1) и Type
(= 14) внутри SampleID = 1 ![enter image description here](https://i.stack.imgur.com/KjJFu.png)
df=structure(list(SampleID = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 3L, 3L, 3L, 3L, 3L,
3L, 3L, 3L), SampleHour = structure(c(1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L), .Label = c("17:03:13", "17:05:44", "17:08:44",
"17:11:39", "17:14:39", "17:18:06", "17:21:13", "17:24:02", "17:27:05",
"17:32:43", "17:35:59", "17:38:40", "17:41:26", "17:44:43", "17:48:14",
"17:51:14", "17:55:00", "17:57:16", "18:00:12", "18:03:16", "18:06:03",
"18:09:59", "18:12:49", "18:15:37", "18:18:01", "18:21:31", "18:26:09",
"18:27:58", "18:29:52", "18:33:21", "18:36:40", "18:38:50", "18:41:25",
"18:44:35", "18:48:45", "18:52:08", "18:54:19", "18:59:52", "19:02:28",
"19:06:04", "19:11:18", "19:15:03", "19:18:06", "19:21:37"), class = "factor"),
Direction = c("0", "0", "0", "0", "0", "0", "0", "0", "0",
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0",
"0", "0", "0", "0", "0", "0", "0", "0", "1", "1", "1", "1",
"1", "1", "1", "1", "1", "1", "1", "0", "0", "0", "0", "0",
"0", "0", "0"), Type = c(14, 12, 11, 12, 10, 8, 7, 5, 6,
6, 5, 1, 7, 12, 10, 12, 16, 11, 8, 6, 4, 12, 10, 7, 6, 5,
14, 4, 5, 13, 4, 12, 1, 14, 12, 12, 6, 13, 12, 4, 12, 14,
1, 6, 14, 4, 6, 14, 6, 4, 1, 6, 14, 13, 13, 11, 12, 12, 11,
11), Difference_last = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0,
0, 0, 1, 1, 1, 0, 1, 1, 1, 2, 2, 0, 0, 0, 23, 0, 11, 13,
4, 17, 23, 8, 0, 0, 0, 0, 0, 0, 0, 0)), .Names = c("SampleID",
"SampleHour", "Direction", "Type", "Difference_last"), row.names = c(NA,
-60L), class = c("tbl_df", "tbl", "data.frame"))