我正在使用来自海狸的 GPS 数据的数据框,该数据框包括带有动物 id 的列(见$id
下文),这是一个具有 26 个级别的因素。对于每只海狸,我们都有几个 GPS 值 - 数字因动物而异。
我现在想以 15 分钟的间隔为每个人创建一个单独的列,其中包含“捕获后的时间”,从 0 分钟开始。对于 15 分钟的间隔,我尝试创建一个序列
TimePostRel <- seq(from = 0, along = x, by = 15)
现在我不确定如何定义 x 所以它指的是每个人。我应该使用 split 函数来拆分数据框吗?我们也有一个日期/时间列,但问题是我们在白天(当动物睡觉时)没有 GPS 点,导致我们想从TimePostRel
计算中排除休息时间(我们只想参考“活跃时间”捕获后)。
这是数据框:
'data.frame': 6425 obs. of 22 variables:
$ nb : int 1 2 3 4 5 6 7 8 9 10 ...
$ x : num 517710 517680 NA 517625 517624 ...
$ y : num 6587730 6587759 NA 6587929 6588014 ...
$ date : POSIXct, format: "2010-04-10 05:15:00" "2010-04-10 05:30:00" "2010-04-10 05:45:00" "2010-04-10 06:00:00" ...
$ dx : num -30.2 NA NA -0.4 -39.2 ...
$ dy : num 28.8 NA NA 85.7 126.8 ...
$ dist : num 41.7 NA NA 85.7 132.7 ...
$ dt : num 900 900 900 900 900 900 900 900 NA 900 ...
$ R2n : num 0 1743 NA 46880 88416 ...
$ abs.angle : num 2.38 NA NA 1.58 1.87 ...
$ rel.angle : num NA NA NA NA 0.295 ...
$ id : Factor w/ 26 levels "Andreas","Apple",..: 1 1 1 1 1 1 1 1 1 1 ...
$ burst : Factor w/ 329 levels "Andreas.1","Andreas.2",..: 1 1 1 1 1 1 1 1 1 2 ...
$ sex : int 2 2 NA 2 2 2 NA 2 2 2 ...
$ season : int 2 2 NA 2 2 2 NA 2 2 2 ...
$ try : int 33 34 NA 36 37 38 NA 39 40 41 ...
$ x.sats : int 5 5 NA 5 5 5 NA 6 5 6 ...
$ hdop : num 2.1 4.2 NA 2.7 3.3 2.1 NA 2.5 2.8 2.2 ...
$ lodge.x : num 517595 517595 NA 517595 517595 ...
$ lodge.y : num 6587806 6587806 NA 6587806 6587806 ...
$ NSD_lodge : num 19039 9440 NA 15909 44268 ...
$ nsd_1stGPSpoint : num 0 1743 NA 46880 88416 ...
有人现在如何解决这个问题?提前致谢!!
干杯,帕特里夏