Ho una serie di timestamp di caratteri in R. Quando cambio la loro classe in POSIXct
utilizzando metodi intuitivi, R assegna il fuso orario ambiguo EST
.fusi orari in R: come evitare termini ambigui come EST?
Ad esempio:
as.POSIXct("2012-08-06 15:32:00")
as.POSIXct("2012-08-06 15:32:00", tz = "Australia/Brisbane")
as.POSIXct("2012-08-06 15:32:00", tz = "")
tutti producono lo stesso output sul mio due scatole (Mac e Windows):
"2012-08-06 15:32:00 EST"
Il problema qui è EST
potrebbe essere un qualsiasi numero di fusi orari: Eastern Standard Tempo negli Stati Uniti, o Australian Eastern Standard Time, o un altro fuso orario in Canada (da ?timezone
):
Attenzione che alcune di queste designazioni potrebbero non essere ciò che pensate: in particolare EST è un fuso orario utilizzato in Canada senza ora legale , e non EST5EDT né (Australiano) Eastern Standard Time.
C'è un metodo per impostare il fuso orario che evita questa etichetta EST
. Si fa riferimento, ma non completamente spiegato nella guida R ?timezone
. Impostazione x come il tempo dello sbarco Curiosity su Marte come riferito da un Australian news service:
x <- as.POSIXct("2012-08-06 15:32:00", tz = "Etc/GMT-10")
x
"2012-08-06 15:32:00 GMT-10"
E possiamo verificare che questo è corretto convertendolo in un fuso orario degli Stati Uniti e il controllo con un Californian news report:
y <- format(x, tz = "America/Los_Angeles")
y
"2012-08-05 22:32:00"
Se si utilizza questo Etc/GMT+n
o Etc/GMT-n
notazione, si prega di attenzione al seguente avvertimento da ?timezone
:
Molti i sistemi supportano fusi orari della forma GMT + n e GMT-n, che sono a un offset fisso da UTC (quindi senza DST). Contrariamente ad alcuni usi (ma coerenti con nomi come PST8PDT), gli offset negativi sono i tempi prima di (est di) UTC, gli offset positivi sono le ore indietro (a ovest di) UTC.
appena trovato questo [domanda relativa & risposta] (http://stackoverflow.com/a/8011954/1265353) – sfuj
C'è un SO 'migliori pratiche' per la gestione di/orario che possono aiutare con il concettuale lato delle cose: http://stackoverflow.com/questions/2532729/daylight-saving-time-and-timezone- best-practice. – Thell