R 筛选到特定列中的特定日期
我有一个数据帧,df和列DateTimeUTCR 筛选到特定列中的特定日期,r,date,time,dplyr,R,Date,Time,Dplyr,我有一个数据帧,df和列DateTimeUTC ID DateTimeUTC A 12/4/2019 11:30:30 PM A 12/4/2019 11:30:30 PM B 12/5/
ID DateTimeUTC
A 12/4/2019 11:30:30 PM
A 12/4/2019 11:30:30 PM
B 12/5/2019 11:30:30 PM
B 12/5/2019 11:30:30 PM
B 12/5/2019 11:30:30 PM
我想进行筛选,以便DateTimeUTC仅显示2019年5月12日的日期,结果如下:
ID DateTimeUTC
B 12/5/2019 11:30:30 PM
B 12/5/2019 11:30:30 PM
B 12/5/2019 11:30:30 PM
我已尝试此命令,但未成功:
library('dplyr')
library('lubridate')
data %>% filter as.Date(DateTimeUTC == "2019-12-05")
我想要2019年12月5日的所有日子,包括时间(小时、分钟和秒)
这可能吗?在这里,“DateTimeUTC”的格式不同。将列转换为DateTime类(格式似乎是月-日-年-小时-分-秒),并将时间
删除为.Date
,然后进行比较(=
)
在OP的代码中,
as.Date
应用于逻辑向量,该逻辑向量无论如何都是FALSE
,因为它将原始格式与其他格式进行比较,这将导致代码执行失败,即
"12/4/2019 11:30:30 PM" == "2019-12-05"
#[1] FALSE
将包装为.Date
将导致错误
as.Date("12/4/2019 11:30:30 PM" == "2019-12-05")
as.Date.default(“2019年4月12日11:30:30下午”=“2019-12-05”)中出错:不知道如何转换“2019年12月4日11:30:30 PM”=“2019-12-05” 上课“日期” 数据
数据是的,我试图接受,但它不让我接受。我不得不“等待”一段时间。感谢you@akrun,如果有两列包含日期,我将如何筛选。例如,开始时间列和结束时间column@TanishaHudson我会将“开始时间”和“结束时间”转换为此处显示的DateTime”类,然后在filter`中使用,即data%>%filter(as.Date(mdy_hms(starttime))>=“2019-12-05”和as.Date(mdy_hms(结束时间))
as.Date("12/4/2019 11:30:30 PM" == "2019-12-05")
data <- structure(list(ID = c("A", "A", "B", "B", "B"),
DateTimeUTC = c("12/4/2019 11:30:30 PM",
"12/4/2019 11:30:30 PM", "12/5/2019 11:30:30 PM", "12/5/2019 11:30:30 PM",
"12/5/2019 11:30:30 PM")), class = "data.frame", row.names = c(NA,
-5L))