Factor -> numeric is tricky sometimes: you need to do this as.numeric(as.character(x))
but that's not going to work for you here because you don't really want numbers. Instead try something like this (untested though): parseDuration <- function(t1, t2){ t1 <- as.numeric(unlist(strsplit(as.character(t1), ":"))) t2 <- as.numeric(unlist(strsplit(as.character(t2), ":"))) new_duration(hour = t1[1] - t2[1], minute = t1[2] - t2[2], second = t1[3] - t2[3]) } as.duration(apply(x, 1, function(m) parseDuration(m[1], m[2]))) This could likely be made cleaner -- I don't know lubridate well. Hope this helps, Michael On Thu, Mar 29, 2012 at 7:57 AM, drr <daniel....@wp.pl> wrote: > Hi All, > > I have a data frame: > > Time1 Time2 > 1 176:46:10 41:48:06 > 2 171:28:57 61:19:10 > 3 178:25:15 34:05:35 > 4 74:04:20 25:01:55 > 5 136:11:20 37:59:32 > 6 138:17:17 30:22:27 > 7 183:04:48 29:25:02 > 8 179:35:01 19:29:44 > >> str(df) > 'data.frame': 8 obs. of 2 variables: > $ Time1: Factor w/ 583 levels "","00:00:01",..: 574 573 575 583 565 566 579 > 577 > $ Time2: Factor w/ 1298 levels "00:00:00","00:00:01",..: 1292 1297 1288 > 1281 1290 1286 1284 1279 > > I would like to make calculations (adding, summing) on this data. How do I > transform those factors into duration data (in format hh:mm:ss). I have > already found *lubridate* package but it does not work with factors. I tried > to convert as numeric, but it never works for me. > > How do I do that? > > -- > View this message in context: > http://r.789695.n4.nabble.com/Adding-duration-hh-mm-ss-Converting-factor-column-into-duration-class-tp4515210p4515210.html > Sent from the R help mailing list archive at Nabble.com. > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.