2010-05-08 20 views
28

Mein Code geliefert werden:R dates "Herkunft" muss

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

Fehler:

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

Warum ist es mir nach dem Ursprung zu fragen, wenn ich es in dem obigen Code geliefert?

Antwort

26

Ich vermute, Sie meinten:

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

als 'x' Argument as.Date() hat von Date Typ sein.

Nebenbei hätte dies als Follow-up oder Bearbeitung Ihrer vorherigen Frage angemessen.

+0

Argument 'x' zu _axis_.Date(), nicht wahr? – user12341234

+0

Siehe 'args (as.Date)', um auch 'x' zu sehen. –

12

Meine R Nutzung 1970-01-01:

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

und diese stimmt mit der Berechnung von

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

Mine auch, warum jedes R verschiedene Ursprungsdaten verwendet? – GabyLP

+1

Ich weiß, das ist ein alter Beitrag. Aber immer, wenn ich das mache, bekomme ich "NA" den ganzen Weg runter in meine Datumsspalte. Meine Daten sind in diesem Format '20150521' – NealC

1

Wenn Sie sowohl Datums- und Zeitinformationen in dem numerischen Wert haben, dann as.POSIXct verwenden. Data.table-Paket IDateTime-Format ist ein solcher Fall. Wenn Sie eine Datei mit fwrite speichern, konvertiert das Paket automatisch das Datum in das IDatetime-Format, bei dem es sich um eine Unix-Zeit handelt. Um in das normale Format zurück zu konvertieren, können folgende Schritte ausgeführt werden.

Beispiel: Angenommen, Sie haben einen Unix-Zeitstempel mit Datum und Uhrzeit Informationen haben: 1442866615

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