Conversion de la date et de l’heure en heure UNIX

J’espère que quelqu’un ici sait ce qui se passe. J’ai ce problème étrange où lorsque j’essaie de convertir une date / heure en temps UNIX, j’obtiens des nombres négatifs, voici mon code de référence:

> foo  alpha = as.POSIXct(foo) > alpha [1] "0004-01-20 LMT" > beta = as.numeric(alpha) > beta [1] -62039347125 #Why?!?!?! 

Donc en gros, je passe en revue ce qui précède et je me retrouve avec un nombre négatif, la chose ennuyeuse est que peu importe la date / l’heure que j’utilise, je me retrouve avec le même résultat. Le format de date / heure est mois / jour / année heure: minute: seconde.

Est-ce que quelqu’un sait ce qui se passe? Toute aide sera appréciée, merci.

Notez que vous utilisez l’année 4, soit 1966 ans avant le début du temps Unix. Tu devrais faire:

 foo <- '2017/4/1 00:02:23' alpha = as.POSIXct(foo) alpha ## "2017-04-01 00:02:23 EDT" beta = as.numeric(alpha) beta ## 1491019343 

Je l’ai compris. Vous devez spécifier le format de la date et de l’heure.

Alors:

 > foo <- '4/1/2017 00:02:23' > alpha = as.POSIXct(foo, format = '%m/%d/%Y %H:%M:%S') > beta = as.numeric(alpha) > beta [1] 1491001343