2010-05-08 15 views
28

Il mio codice:R date "origine" deve essere alimentato

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

Errore:

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

Perché mi chiede l'origine quando ho fornito nel codice di cui sopra?

risposta

26

ho il sospetto che volevi dire:

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

come la 'x' argomento di as.Date() deve essere di tipo Date.

Per inciso, questo sarebbe appropriato come follow-up o modifica della domanda precedente.

+0

'X' per _axis_.Date(), no? – user12341234

+0

Vedere 'args (as.Date)' per vedere 'x' anche lì. –

12

Il mio uso R 1970-01-01:

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

e questo corrisponde il calcolo da

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

Anche il mio, perché ogni R usa date di origine diverse? – GabyLP

+1

So che questo è un vecchio post. Ma ogni volta che eseguo questo, ottengo 'NA' fino in fondo la colonna della mia data. Le mie date sono in questo formato '20150521' – NealC

1

Se si dispone sia di data e ora nel valore numerico, quindi utilizzare as.POSIXct. Il formato IDateTime del pacchetto Data.table è un caso del genere. Se si utilizza fwrite per salvare un file, il pacchetto converte automaticamente le date in formato idatetime che è unix time. È possibile eseguire la riconversione in formato normale.

Esempio: Diciamo che avete un unix timestamp con la data e l'ora info: 1442866615 argomento

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