2010-05-08 6 views
28

Mon code:dates "origine" R doit être fourni

axis.Date(1,sites$date, origin="1960-10-01") 

Erreur:

Error in as.Date.numeric(x) : 'origin' must be supplied 

Pourquoi est-il me demande l'origine quand je fournis dans le code ci-dessus?

Répondre

26

Je vous soupçonnez voulais dire:

axis.Date(1, as.Date(sites$date, origin = "1960-10-01")) 

comme 'x' argument as.Date() doit être de type Date. En outre, cela aurait approprié comme un suivi ou une modification de votre question précédente.

+0

l'argument 'x' à _axis_.Date(), non? – user12341234

+0

Voir 'args (as.Date)' pour y voir 'x' aussi. –

12

Mon R utilisation 1970-01-01:

>as.Date(15103, origin="1970-01-01") 
[1] "2011-05-09" 

et cela correspond au calcul de

>as.numeric(as.Date(15103, origin="1970-01-01")) 
+0

Mine aussi, pourquoi chaque R utilise des dates d'origine différentes? – GabyLP

+1

Je sais que c'est un vieux message. Mais chaque fois que je lance ceci, je reçois 'NA' tout le long de ma colonne de date. Mes dates sont dans ce format '20150521' – NealC

1

Si vous avez à la fois la date et l'heure de la valeur numérique, puis utilisez as.POSIXct. Le format IDateTime du package Data.table est un tel cas. Si vous utilisez fwrite pour enregistrer un fichier, le package convertit automatiquement les dates et heures au format idatetime qui est l'heure unix. Pour convertir en format normal suivant peut être fait.

Exemple: Disons que vous avez un horodatage unix avec des informations de date et heure: 1442866615

> as.POSIXct(1442866615,origin="1970-01-01") 
[1] "2015-09-21 16:16:54 EDT" 
Questions connexes