2016-07-20 5 views
0

Как преобразовать временную метку в этом формате в человеческую дату?R - как преобразовать метку времени JavaScript в человеческое время с помощью as.POSIXct?

создать метку времени с помощью JavaScript:

Date.now(); 

Выходной пример:

1468833354929 

Тогда я хранить его в БД.

Так что, когда я пытаюсь преобразовать его с R:

date <- as.POSIXct(1468833354929, origin="1970-01-01", tz="Asia/Singapore") 

я получаю:

48515-06-24 09:15:29 SGT 

Но это должно быть:

2016-07-18 09:15:29 SGT 

Любые идеи, почему и как я могу получить правильное человеческое время-время?

+1

Ваше мнение, что это должно быть "2016-07-18 09:15:29 SGT" неверно. Дата должна быть 2016-07-18, но HMS не должна совпадать с выводом 'as.POSIXct (1468833354929, origin =" 1970-01-01 ", tz =" Asia/Singapore ")'. –

+1

@teelou вы также можете использовать (теперь <- as.POSIXlt (Sys.time())) нет? – Learner

+0

@JoshuaUlrich 'Ваше ожидание, что это должно быть" 2016-07-18 09:15:29 SGT "неверно.' - извините, я не понимаю. Что такое «HMS»? – laukok

ответ

4

Это в миллисекундах. Разделить на 1000.

R> as.POSIXct(1468833354929/1000, origin="1970-01-01", tz="Asia/Singapore") 
[1] "2016-07-18 17:15:54 SGT" 
+0

спасибо. как я могу получить «1468833354.929' в R? – laukok

+0

Все никогда не думал, что это просто в R! благодаря! : D – laukok