我正在通過R中的一些示例代碼獲取動物園對象(時間序列)中每秒的最後數據。我得到的代碼工作,但我不明白以下行:在R時間中查找第二個間隔
time(tmp) <- as.integer(time(tmp) + 1e-7) + Epoch
爲什麼我們添加1e-7的時間值?在此粘貼完整的代碼。請幫助
library(zoo)
zsec <- structure(1:10, index = structure(c(1234760403.968, 1234760403.969,
1234760403.969, 1234760405.029, 1234760405.029, 1234760405.03,
1234760405.03, 1234760405.072, 1234760405.073, 1234760405.073
), class = c("POSIXt", "POSIXct"), tzone = ""), class = "zoo")
# tmp is zsec with time discretized into one second bins
tmp <- zsec
st <- start(tmp)
Epoch <- st - as.numeric(st)
time(tmp) <- as.integer(time(tmp) + 1e-7) + Epoch
# find index of last value in each one second interval
ix <- !duplicated(time(tmp), fromLast = TRUE)
這是一個非常好的示例,您應該在代碼中註釋以解釋事情。 「我們添加了1e-7來解決這個奇怪的錯誤。」 –