Mam następujący ramka danychKonwersja uniksowy znacznik czasu do datetime
> head(try)
creates time
1 128.29508 1417392072
3 236.98361 1417392072
7 98.45902 1417392072
9 157.44068 1417392131
10 227.38333 1417392131
11 242.03390 1417392131
> str(try)
'data.frame': 102968 obs. of 2 variables:
$ creates: num 128.3 237 98.5 157.4 227.4 ...
$ time : Factor w/ 26418 levels "1417392071","1417392072",..: 2 2 2 3 3 3 3 3 5 5 ...
jestem w stanie konwertować znacznik czasu UNIX do datetime stosując następujące metody próbowałem
> head(as.POSIXlt(as.numeric(try$time),origin="1970-01-01",tz="GMT"))
[1] "1970-01-01 00:00:02 UTC" "1970-01-01 00:00:02 UTC" "1970-01-01 00:00:02 UTC" "1970-01-01 00:00:03 UTC" "1970-01-01 00:00:03 UTC"
[6] "1970-01-01 00:00:03 UTC"
> head(as.POSIXct(as.character(try$time),tz="GMT"))
Błąd jako. POSIXlt.character (x, tz, ...): ciąg znaków nie ma standardowego, jednoznacznego formatu:
> head(as.POSIXlt(as.POSIXct(as.vector(as.numeric(try$time)),origin="1970-01-01")))
[1] "1970-01-01 00:00:02 UTC" "1970-01-01 00:00:02 UTC" "1970-01-01 00:00:02 UTC" "1970-01-01 00:00:03 UTC" "1970-01-01 00:00:03 UTC"
[6] "1970-01-01 00:00:03 UTC"
Nie jestem pewien, co tutaj robię nieprawidłowo.
@akrun dzięki, to działa, ale nie masz pojęcia, dlaczego to musi być zrobione w ten sposób? – user3006691
Przypuszczam, że Emer dodał pewne wyjaśnienie. – akrun