Skip to content

Adding Time when Blanks

3 messages · Charles Determan Jr, Rui Barradas

#
Hello,

Try the following.


dat <- read.table(text="
      ID        group Start_date Time_of_experiment Time_of_end
1    20209         4    02/02/2009           12:38:00
26   30209         3   03/02/2009           12:40:00      13:32:00
27   31609         4   03/16/2009           11:28:00      12:26:00
28   40609         4   04/06/2009           11:17:00
53   42709         4   04/27/2009           11:15:00       9:30:00
76   51109         3   05/11/2009           11:51:00
101  51809         1  05/18/2009           12:28:00
126  62209         3  06/22/2009           11:31:00
150  71309         4  07/13/2009           12:12:00      13:37:00
173  81009         4  08/10/2009           11:32:00      20:52:00
", header=TRUE, fill=TRUE)
str(dat)

dat$start_time <- with(dat, paste(Start_date, Time_of_experiment))
dat$Start_of_Experiment <-
     as.POSIXct(strptime(dat$start_time, "%m/%d/%Y %H:%M:%S"))

#--- Create End_of_Experiment
idx <- dat$Time_of_end != ''
dat$End_of_Experiment <- dat$Start_of_Experiment + 48*60*60
dat$End_of_Experiment[idx] <-
     as.POSIXct(strptime(paste(dat$Start_date, dat$Time_of_end)[idx], 
"%m/%d/%Y %H:%M:%S"))
dat


Hope this helps,

Rui Barradas
Em 12-10-2012 18:59, Charles Determan Jr escreveu: