dplyr filter not working with lubridate
问题 I am having troubles understanding why the code below behaves how it behaves. Basically, the filter seems to be applied but then fails to work in subsequent calls. > library(dplyr) > library(lubridate) > > md1 <- data.frame(no = 1:4, time = c("12:30:00", "13:30:00", "14:30:00", "15:30:00")) > md1$time <- hms(md1$time) > md1 no time 1 1 12H 30M 0S 2 2 13H 30M 0S 3 3 14H 30M 0S 4 4 15H 30M 0S > md2 <- filter(md1, hour(time)<14) > md2 no time 1 1 12H 30M 0S 2 2 13H 30M 0S > hour(md2$time) [1] 12