Thanks in advance!
I have time series data that was collected every five minutes, the head() of which looks like…
PumaID CollarID Type GMT_Date GMT_Time LMT_Date LMT_Time ActivityX
1 P01 2905 Argos 1/1/2000 12:15:00 AM 1/1/2000 12:00:00 AM 0
2 P01 2905 Argos 1/1/2000 12:25:00 AM 1/1/2000 12:00:00 AM 0
3 P01 2905 Argos 1/1/2000 12:00:00 AM 1/1/2000 12:00:00 AM 0
4 P01 2905 Argos 2/21/2011 9:15:00 PM 2/21/2011 2:15:00 PM 0
5 P01 2905 Argos 2/21/2011 9:20:00 PM 2/21/2011 2:20:00 PM 18
6 P01 2905 Argos 2/21/2011 9:25:00 PM 2/21/2011 2:25:00 PM 14
ActivityY ActivitySum DayNight Temp
1 0 0 Night 22
2 0 0 Night 22
3 0 0 Night 21
4 0 0 Day 21
5 21 39 Day 20
6 15 29 Day 21
I need to aggregate the ActivitySum column into 12 hour intervals. Using the code below I read in the table, changed the date column to the correct format, and aggregated the data by day.
P01 <- read.csv( "ActDtaP01_ALL_Temp.csv" )
date <- as.Date(P01$GMT_Date, "%m/%d/%Y")
new <- aggregate(P01, by = list(date), mean)
Resulting in this (below). My specific questions are:
Group.1 PumaID CollarID Type GMT_Date GMT_Time LMT_Date LMT_Time ActivityX
1 2000-01-01 NA 2905 NA NA NA NA NA 0.000000
2 2011-02-21 NA 2905 NA NA NA NA NA 8.727273
3 2011-02-22 NA 2905 NA NA NA NA NA 0.000000
4 2011-02-23 NA 2905 NA NA NA NA NA 0.000000
5 2011-02-24 NA 2905 NA NA NA NA NA 0.000000
6 2011-02-25 NA 2905 NA NA NA NA NA 0.000000
ActivityY ActivitySum DayNight Temp
1 0.000000 0.00000 NA 21.6666667
2 9.060606 17.78788 NA 12.6969697
3 0.000000 0.00000 NA -2.8521127
4 0.000000 0.00000 NA -1.4471831
5 0.000000 0.00000 NA 0.3485915
6 0.000000 0.00000 NA 1.3368421
1) How can I further subset this into 12 hr intervals within each day (24 hr period) resulting something like..
Group.1 Group.2 PumaID CollarID etc…
2/21/2011 Day P01 …
2/21/2011 Night P01 …
2/22/2011 Day P01 …
2/22/2011 Night P01
2) How do I keep all the column values in the data table rather then returning an NA if the FUN argument (mean in this case) could not be computed?
Thanks again!