Конвертировать эпоху UNIX в объект Date

м построение и выполнение расчетов на равномерно распределенных временных рядах. Временные метки в настоящее время хранятся в виде целых чисел, представляющих количество секунд с начала эпохи UNIX (например,1352068320), ноDate объекты кажутся более подходящими для построения. Как я могу сделать преобразование? Я '

прочитал,?Date?as.Date а также??epoch, но, похоже, пропустил эту информацию.

Ответы на вопрос(1)

Решение Вопроса

Пройти черезPOSIXct и вы хотите установитьTZ там - здесь вы видите мой (Чикаго) дефолт:

R> val <- 1352068320
R> as.POSIXct(val, origin="1970-01-01")
[1] "2012-11-04 22:32:00 CST"
R> as.Date(as.POSIXct(val, origin="1970-01-01"))
[1] "2012-11-05" 
R> 

Редактировать: Несколько лет спустя мы можем использоватьв любой момент пакет:

R> library(anytime)
R> anytime(1352068320)
[1] "2012-11-04 16:32:00 CST"
R> anydate(1352068320)
[1] "2012-11-04"
R> 

Обратите внимание, как все это работает безлюбой формат или исходные аргументы.

 Dirk Eddelbuettel21 окт. 2015 г., 21:56
Посмотрите на доступные форматы печати, например, через.help(strptime)
 Stratix21 окт. 2015 г., 21:41
Как бы вы извлекли только локальное время из переменной R и выгрузили дату?
 Dirk Eddelbuettel25 мая 2015 г., 14:06
Это'всегда одно и то же: масштабируйте то, что у вас есть, чтобы оно достигало того же самогомасштаб как текущее время:print(as.numeric(Sys.time()), digits=16) с шестью цифрами это то, что моя система Linux. Вас такжеМожно разделить на 1000; это не усекает.
 Hack-R17 нояб. 2014 г., 20:48
Это сработало, спасибо большое!
 Dirk Eddelbuettel17 нояб. 2014 г., 20:47
Попробуйте разделить это на 1000:as.POSIXct(1415560016876/1000, origin="1970-01-01") получает "2014-11-09 13: 06: 56.875 CST " и вам нужно убедиться,секунд ожидается (как для R) илимиллисекунды.
 Hack-R17 нояб. 2014 г., 20:43
У меня есть отметки времени, как.1415560016876epochconverter.com преобразует это в дату без проблем. Ваш код выше дает мне такие вещи, как"46832-11-09 12:47:33 EDT"...
 Shambho03 февр. 2015 г., 02:13
@DirkEddelbuettel: Спасибо! Есть ли руководство о том, когда делить на 1000, а когда нет? Просто пытаюсь понять основы.
 Dirk Eddelbuettel03 февр. 2015 г., 03:16
@Shambho: Просто сделай обратное и посмотри,в том же порядке:print(as.numeric(Sys.time()))
 Omri37425 мая 2015 г., 14:00
У меня такой же случай, но мне нужны миллисекундные данные, чтобы я могт разделить на 1000. Есть идеи о том, как представить их как даты?
 Shambho03 февр. 2015 г., 03:25
@DirkEddelbuettel: Большое спасибо!

Ваш ответ на вопрос