Ho un file che formatta i timestamp come 25/03/2011 9:15:00 p.m.
Parse timestamp con a.m./p.m
Come posso analizzare questo testo per una classe di data-ora sia con strptime
o as.POSIXct
?
Ecco cosa quasi funziona:
> as.POSIXct("25/03/2011 9:15:00", format="%d/%m/%Y %I:%M:%S", tz="UTC")
[1] "2011-03-25 09:15:00 UTC"
Ecco ciò che non funziona, ma mi piacerebbe avere di lavoro:
> as.POSIXct("25/03/2011 9:15:00 p.m.", format="%d/%m/%Y %I:%M:%S %p", tz="UTC")
[1] NA
sto usando R versione 2.13.2 (2011-09-30) su MS Windows. Il mio locale di lavoro è "C":
Sys.setlocale("LC_TIME", "C")
'? Strptime' dice che'% p' è "indicatore AM/PM nelle impostazioni internazionali". http://stdcxx.apache.org/doc/stdlibref/time-put.html dice nel locale C che è AM/PM, quindi penso che dovrete 'sub (" am "," AM ",. ..) 'e' sub ("pm", "PM", ...) 'prima. (Probabilmente c'è una slick espressione regolare che farebbe tutto in una volta.) –
@BenBolker: ho avuto la tua espressione regolare liscia qui ... :) –