2017-02-21 4 views
2

Hoffe, Sie können helfen. Habe einen Datenrahmen mit Datum mal drin. Ich möchte feststellen, ob das Zeitergebnis nach Stunden auftritt (> 16:00). Gibt es einen einfachen Weg, dies zu tun? Plante die Zeit Sekunden auf Umwandlung und dann so zu tun, sondern nehme an, es ist ein einfacher Weg, dieseErmitteln, ob die 24-Stunden-Datetime innerhalb des Intervalls liegt

datetimes <- c("2013-04-01 08:19:00", "2013-04-02 16:19:00", "2017-02-17 14:01:00", "2017-02-17 22:01:00") 

as.POSIXct(datetimes) 

Antwort

2

Verwenden Sie einfach ein format und comparsion über >=:

format(datetimes,"%H") >= 16 
#[1] FALSE TRUE FALSE TRUE 

Sie bereits über as.POSIXct() umgewandelt haben Unter der Annahme, wie in Ihrer Frage gezeigt.

Auch wenn format kehrt eine Zeichenfolge, ist der Vergleich sicher mit einem numerischen zu tun, wie alle einstelligen Werte sind gepolstert wie "08"

Verwandte Themen