[R] Problem with as.POSIXct()
Stefan Peterson
stefan.petersson at inizio.se
Wed Jun 1 14:56:28 CEST 2011
circe <tju_circe <at> hotmail.com> writes:
>
> Hi, when I type in these words:
>
> > a=c("2011-06-01 17:21:24.83", "2011-06-01 17:21:24.283")
> > as.POSIXct(a)
>
> the real output is:
> [1] "2011-06-01 17:21:24.830 CST" "2011-06-01 17:21:24.283 CST"
>
> rather than the expected one:
> [1] "2011-06-01 17:21:24.083 CST" "2011-06-01 17:21:24.283 CST"
>
> How can I deal with such milliseconds less than 100?
>
> Thanks
>
> --
> View this message in context:
http://r.789695.n4.nabble.com/Problem-with-as-POSIXct-tp3565424p3565424.html
> Sent from the R help mailing list archive at Nabble.com.
>
>
Well, to me the R is behaving as expected. I.e. .83 = .830. If Your dates come
in a format like You describe, You need to manually add a leading zero to Your
milliseconds.
A suggestion to work from:
for(i in 1:length(a)){
if(nchar(a[i]) == 23){
print(a[i])
}else{
print( paste(substr(a[i],1,20),0,substr(a[i],21,22),sep='') )
}
}
More information about the R-help
mailing list