Конвертировать chron в POSIXct в формате GMT

Обычно я использую chron для представления объектов даты / времени. Однако мне нужно использовать некоторые функции, которые работают с форматом POSIX, поэтому я пытаюсь перейти от chron к POSIXct. Использование as.POSIXct(), кажется, работает, но результат в местном времени, а не в GMT (исходные данные в GMT).

x <- chron(dates="05/12/15", times="12:30:45")
as.POSIXct(x, tz="GMT")
"2015-05-12 13:30:45 BST"

что я хочу это:

"2015-05-12 12:30:45 GMT"

но я не могу найти способ получить его.

strptime () не будет работать, потому что исходный ввод - это не строка, а объект chron. Конечно, я мог бы перейти от объекта chron к символьной строке, а затем к POSIXct, но это кажется немного запутанным способом сделать это.

Я полагаю, что мог бы заставить мою R-сессию использовать GMT с Sys.timezone(), но я бы предпочел не делать этого. Любое другое предложение? Спасибо.

1 ответ

Решение

Просто попробуй:

x <- chron(dates="05/12/15", times="12:30:45")
y<-as.POSIXct(x)
attr(y,"tzone")<-"GMT"
y
#[1] "2015-05-12 12:30:45 GMT"
Другие вопросы по тегам