我想创建一个新的二进制列,它表示自上一点以来已经过了多长时间。如果自前一个点以来已经小于7000秒,我需要一个行值1,如果它比前一个点以来已经超过7000秒,则需要值0。每行都有一个POSIXct形式的日期时间戳,但是我创建了一个秒数向量,如果它更容易工作。
我的数据如下:
structure(list(datetime = c("2015/1/06 17:51:17", "2015/1/06 19:51:17",
"2015/1/06 21:46:38", "2015/1/06 21:51:18", "2015/1/06 21:56:26",
"2015/1/06 22:1:27", "2015/1/06 22:4:27", "2015/1/06 22:7:27",
"2015/1/06 22:10:27", "2015/1/06 22:15:31", "2015/1/06 22:18:30",
"2015/1/06 22:21:30", "2015/1/06 22:24:39", "2015/1/06 22:27:38",
"2015/1/06 22:31:27", "2015/1/06 22:34:54", "2015/1/06 22:38:57",
"2015/1/06 22:43:6", "2015/1/06 22:48:14", "2015/1/06 22:53:16"
), secs = c(1420566677, 1420573877, 1420580798, 1420581078, 1420581386,
1420581687, 1420581867, 1420582047, 1420582227, 1420582531, 1420582710,
1420582890, 1420583079, 1420583258, 1420583487, 1420583694, 1420583937,
1420584186, 1420584494, 1420584796), lat = c(57.601675, 57.601591,
57.602044, 57.603132, 57.6053, 57.608035, 57.609892, 57.612037,
57.613997, 57.615203, 57.617153, 57.618842, 57.62074, 57.621673,
57.623699, 57.625592, 57.628001, 57.630123, 57.633267, 57.634734
), lon = c(-4.034009, -4.033829, -4.036087, -4.039707, -4.043336,
-4.046311, -4.047127, -4.047383, -4.047484, -4.047528, -4.046922,
-4.046935, -4.046753, -4.04651, -4.045886, -4.045272, -4.044616,
-4.044387, -4.044233, -4.042613)), .Names = c("datetime", "secs",
"lat", "lon"), row.names = c(NA, 20L), class = "data.frame")