Как рассчитать среднее значение за 8 часов?(не скользящее среднее) - PullRequest
0 голосов
/ 27 сентября 2018

Я бы хотел посчитать среднее значение за 8 часов.

Мой подход: сократить каждые 8 ​​часов, а затем взять среднее значение каждого 8-часового сегмента.Второй шаг - получить среднее значение этих 8-часовых средних.

Мне бы хотелось несколько советов о том, как создать 8-часовые сокращения, используя данные ниже.

Первая пара строк данных:

 PacificTime       UTC_Time         day    site_id O3_calibrated
 1:  7/5/2017 1:00  7/5/2017 8:00 7/5/2017 ACTV006  9.838518
 2:  7/5/2017 2:00  7/5/2017 9:00 7/5/2017 ACTV006  11.460619 
 3:  7/5/2017 3:00 7/5/2017 10:00 7/5/2017 ACTV006  11.888137
 4:  7/5/2017 4:00 7/5/2017 11:00 7/5/2017 ACTV006  10.371818
 5:  7/5/2017 5:00 7/5/2017 12:00 7/5/2017 ACTV006  6.759685 

Формат данных:

Classes ‘data.table’ and 'data.frame':  124304 obs. of  11 variables:
 $ PacificTime   : chr  "7/5/2017 1:00" "7/5/2017 2:00" "7/5/2017 3:00" 
 "7/5/2017 4:00" ...
 $ site_id       : chr  "ACTV006" "ACTV006" "ACTV006" "ACTV006" ...
 $ O3_calibrated : num  9.84 11.46 11.89 10.37 6.76 ...

Код, который я пытаюсь использовать, - сначала создать средние значения за 8 часов, затем возьмите среднее значение этих 8 часовых средних.

actapdata %>% mutate (o8 = cut(PacificTime, breaks = 8 )) %>%
  group_by (o8, site_id) %>%
   summarise(o8_avg = mean(O3_calibrated))

  o3_avg <- actapdata %>% 
     group_by(site_id) %>% 
     summarise(o3 =  mean(o8_avg, na.rm=T) ) 
...