【发布时间】:2021-03-03 07:59:35
【问题描述】:
所以我试图在我的数据框中过滤掉单个鱼的日期和时间。在第 19 行下面的代码中,它本身将过滤数据框,以在我设置的参数内为我提供该 ID 的时间,但是当我添加第 20 行时,所有内容都被过滤掉并且数据框为空。
我认为我错误地链接了这些行,但我不确定应该怎么做。
ev4<-ev %>%
filter(ID<46|ID>135) %>%
filter(ID!=166) %>% #Take everything but not 166
filter(d<25) %>%
filter(Receiver=="1315"|
Receiver=="1314"|
Receiver=="1321"|
Receiver=="1404"|
Receiver=="1318"|
Receiver=="1325"|
Receiver=="1313"|
Receiver=="1323"|
Receiver=="1324"|
Receiver=="1320"|
Receiver=="1319"|
Receiver=="1317"|
Receiver=="1327"|
Receiver=="1316") %>%
filter(ID == "1", dt <= as.POSIXct("2020-05-23 03:20:36"), dt >= as.POSIXct("2020-05-07 23:50:12")|
ID=="3",dt <= as.POSIXct("2020-05-03 16:13:00")) %>%
filter() %>%
mutate(sp=case_when(ID<46~"salmon", T~"trout")) %>%
mutate(dt=ymd_hms(dt)) %>%
as_tibble()
我可能想要过滤数据框,使其仅包含“2020-04-23 19:26:47”和 2020-04-23 19:26:56 之间的 ID 138 日期。但我也希望能够保持数据框的其余部分完好无损。
【问题讨论】:
-
提供示例输入数据和预期输出。阅读有关
%in%运算符的信息。此外,您可以只使用一个filter并将所有条件保留在其中。 -
我不确定输入和输出数据是什么意思,那不是我在过滤中指定的“日期时间”吗?其余的代码完美地过滤掉了所有内容,只是现在我试图在特定的日期时间范围内为每个特定的“ID”指定
标签: r datetime filter lubridate