r - 仅选择具有特定时差的相关行
问题描述
这是我的数据:
> str(heard2)
'data.frame': 616 obs. of 3 variables:
$ DateTime : POSIXct, format: "2017-07-26 22:28:10" "2017-07-26 22:31:18" "2017-07-26 22:32:18" ...
$ Transmitter: int 30759 30759 30759 30759 30759 30759 30759 30759 30759 30759 ...
$ Station : Factor w/ 35 levels "TRA1-69","TRA2-69",..: 21 21 21 21 21 22 21 22 21 22 ...
> dput(heard2[c(37:47),])
structure(list(DateTime = structure(c(1501109904, 1501109950,
1501109953, 1501110005, 1501110008, 1501110053, 1501110056, 1501110105,
1501110108, 1501110166, 1501110169), class = c("POSIXct", "POSIXt"
), tzone = "GMT"), Transmitter = c(30759L, 30759L, 30759L, 30759L,
30759L, 30759L, 30759L, 30759L, 30759L, 30759L, 30759L), Station = structure(c(21L,
22L, 21L, 22L, 21L, 22L, 21L, 22L, 21L, 22L, 21L), .Label = c("TRA1-69",
"TRA2-69", "TRA3-69", "TRA4-69", "TRA5-69", "TRA6-69", "TRA7-69",
"TRA8-69", "TRB1-69", "TRB2-69", "TRB3-69", "TRB4-69", "TRB5-69",
"TRB6-69", "TRC1-69", "TRC2-69", "TRC3-69", "TRC4-69", "TRC5-69",
"TRC6-69", "TRD1-69", "TRD2-69", "TRE1-69", "TRE2-69", "TRE3-69",
"TRE4-69", "TRE5-69", "TRF1-69", "TRF2-69", "TRF3-69", "TRF4-69",
"TRG1-69", "TRG2-69", "TRG3-69", "TRG4-69"), class = "factor")), row.names = 45:55, class = "data.frame")
日期时间列是指在特定站点检测到发射器的时间。大多数这些检测相隔 30-60 秒或更长时间。如何选择与仅相隔 8 秒(或更短)的时间对应的行?
解决方案
编辑:如果您想要较早、较晚或两者的记录,原始请求尚不清楚。这会产生两个记录。
创建一个用于向前检查的变量 ( lead
),然后创建一个用于向后检查的变量 ( lag
)。然后用于filter
确定您是否想要第一个 (set dist_lead == 8
)、后一个 (set dist_lag == 8
) 或两者 (set filter(dist_lead == 8 | dist_lag == 8)
)。
k %>%
mutate(dist_lead = ifelse(lead(Transmitter) == Transmitter,difftime(lead(DateTime),
DateTime, units = "secs"), NA),
dist_lag = ifelse(lag(Transmitter) == Transmitter, difftime(DateTime, lag(DateTime),
units = "secs"), NA)) %>%
filter(dist_lead == 8)
推荐阅读
- c# - Offline SQL Server database sync to online SQL Server
- javascript - 在一个模式中编码 50 万个圆圈
- asp.net - 使用 DataView.RowFilter 过滤记录时转换列的数据类型
- sql - SQL Server 分区。为明年创建新分区
- c# - C# Gzip 在服务器端错误地压缩字节数组
- javascript - 如何使用单个 ajax 调用下载文件?
- javascript - TypeError:无法读取未定义 + Jest + NodeJS 的属性“原型”
- python - 文件夹结构和导入
- google-colaboratory - Colab 的多个 Google 帐户
- java - Android动画问题——可见性变化比动画快