Subset dataset with time condition in R -


i have dataset in example.txt

"09/jan/2016" "05:00:22" "304" 449 "09/jan/2016" "07:00:12" "304" 449 "09/jan/2016" "10:00:02" "200" 10575 "09/jan/2016" "11:00:03" "304" 449 "09/jan/2016" "13:00:03" "304" 449 "09/jan/2016" "20:00:03" "304" 449  "09/jan/2016" "23:00:03" "304" 450  "10/jan/2016" "00:00:03" "304" 449  "10/jan/2016" "03:00:03" "304" 449  "10/jan/2016" "04:00:03" "304" 449  

can subset dataset range 6 hour before run code in r? example, open , run code in january 10th, @ 4:15, want subset dataset, like

"09/jan/2016" "23:00:03" "304" 450  "10/jan/2016" "00:00:03" "304" 449  "10/jan/2016" "03:00:03" "304" 449  "10/jan/2016" "04:00:03" "304" 449  

what function should use question? , how use it? thank answer ..

assuming 4 columns have , have names v1, v2, v3 , v4 , dataframe df

you can in base r

mergeddatetime <- as.posixct(paste(df$v1, df$v2), format = "%d/%b/%y %h:%m:%s") df[(sys.time() - 6*60*60) <  mergeddatetime & sys.time() > mergeddatetime, ] 

for given example work as,

x <- "01/10/2016 04:15:00" mergeddatetime <- as.posixct(paste(df$v1, df$v2), format = "%d/%b/%y %h:%m:%s") df[(as.posixct(x, format = "%m/%d/%y %h:%m:%s") - 6*60*60) <  mergeddatetime &                  as.posixct(x, format = "%m/%d/%y %h:%m:%s") > mergeddatetime, ]   #        v1       v2      v3  v4 #7  09/jan/2016 23:00:03 304 450 #8  10/jan/2016 00:00:03 304 449 #9  10/jan/2016 03:00:03 304 449 #10 10/jan/2016 04:00:03 304 449 

Comments

Popular posts from this blog

amazon web services - S3 Pre-signed POST validate file type? -

c# - Check Keyboard Input Winforms -