Więc mam zestaw znaczników czasu takiego:Jak wykreślić tylko część czasu znacznika czasu z datą?
datetime<-c("2011-09-28 03:33:00", "2011-08-24 13:41:00", "2011-09-19 16:14:00", "2011-08-18 11:01:00", "2011-09-17 06:35:00", "2011-08-15 12:48:00")
chcę zrobić histogram tylko czasami. Co zrobiłem było podzielić kolumnę na przestrzeni dostać tylko razy, a następnie przekształcić z powrotem do obiektu POSIXct w celu qplot aby go wykreślić:
library(ggplot2, stringr)
qplot(as.POSIXct(strptime((str_split_fixed(as.character(time), " ", 2)[,2]), "%H:%M:%S")))
Jednak wyjście as.POSIXct(strptime((str_split_fixed(as.character(datetime), " ", 2)[,2]), "%H:%M:%S"))
jest
"2011-10-04 03:33:00 PDT" "2011-10-04 13:41:00 PDT" "2011-10-04 16:14:00 PDT" "2011-10-04 11:01:00 PDT" "2011-10-04 06:35:00 PDT" "2011-10-04 12:48:00 PDT"
Spis działek, które chcę, ale wydaje mi się, że jest to zawikłane włamanie do mnie. Na pewno jest lepszy sposób na zrobienie tego? Mógłbym zamienić się w epokę czasu i fabułę, ale starałem się uniknąć konieczności zrobienia tego jako dodatkowego kroku.
Większe pytanie brzmi: "Jak kontrolować wyjście strptime?"
Dzięki, nie użyłem tak mocno obcięcia. Zawsze jest coś nowego do nauki! –
Jestem zdezorientowany. Pracuję z podobną sytuacją, ale z ponad 2 milionami obserwacji. Kiedy używam ** format = "% S: 00" **, po prostu otrzymuję 00:00 dla wszystkich etykiet osi X.Próbowałem zmienić na **% H ** (S = sekundy i H = godziny dla tej funkcji), i to nie w porządku, albo: oś X zaczyna się o 17:00, liczy do 0:00, potem z powrotem do 18: 00 na końcu. (Etykiety są równomiernie rozmieszczone w ciągu 25 godzin.) –
Hmm, zastanawiam się, czy to ma coś wspólnego z tym, że jestem w CDT, który jest 5 godzin za GMT, a czas POSIX zaczyna się od północy GMT, 1 stycznia. , 1970? Więc jeśli dodaję 5 * 60 * 60 do każdej wartości ... Nie, podrapam to. Jestem teraz w CST, czyli w GMT-6. –