[R] Best way to replace :SS with :00
Steve Lianoglou
mailinglist.honeypot at gmail.com
Thu Jul 16 21:58:48 CEST 2009
Hi,
> Not sure if there is an R way to do this or a regular express way,
> but here is what I am trying to do.
>
> I've got lots of data where the format is HH:MM:SS, but I need to
> format it like HH:MM:00, i.e. round the second down to zero.
>
> What is the best way to do this?
Probably not the best way, but here's one way to do it, step by step:
R> a <- rep("HH:MM:SS", 5)
R> a
[1] "HH:MM:SS" "HH:MM:SS" "HH:MM:SS" "HH:MM:SS" "HH:MM:SS"
R> b <- strsplit(a, ":")
R> b
[[1]]
[1] "HH" "MM" "SS"
[[2]]
[1] "HH" "MM" "SS"
[[3]]
[1] "HH" "MM" "SS"
[[4]]
[1] "HH" "MM" "SS"
[[5]]
[1] "HH" "MM" "SS"
R> b2 <- lapply(b, function(pieces) c(pieces[1:2],"00"))
R> b2
[[1]]
[1] "HH" "MM" "00"
[[2]]
[1] "HH" "MM" "00"
[[3]]
[1] "HH" "MM" "00"
[[4]]
[1] "HH" "MM" "00"
[[5]]
[1] "HH" "MM" "00"
R> a2 <- sapply(b2, paste, collapse=':')
R> a2
[1] "HH:MM:00" "HH:MM:00" "HH:MM:00" "HH:MM:00" "HH:MM:00"
HTH,
-steve
--
Steve Lianoglou
Graduate Student: Physiology, Biophysics and Systems Biology
Weill Medical College of Cornell University
Contact Info: http://cbio.mskcc.org/~lianos/contact
More information about the R-help
mailing list