R/statystyki.R

Defines functions obliczStatystyki

Documented in obliczStatystyki

#' Obliczenie minimów, maksimów i średnich dobowych.
#'
#' @param zrodlo tibble zwrócona przez funkcję pobierzXLSX.
#' @param ktoreStatystyki wektor określający, które statystyki (min/maks/srednia)
#'        mają zostać obliczone.
#' @param jednostkaCzasu jednostka czasu, wg której dane mają zostać pogrupowane
#'        przed obliczeniem statystyk.
#'
#' @return tibble z kolumnami data_pomiaru, minimum, maksimum, srednia.
#'
#' @export
#'

obliczStatystyki <- function(zrodlo, ktoreStatystyki = c("min", "maks", "srednia"),
			     jednostkaCzasu = "day") {
  zrodlo %>% 
    mutate(dzienPomiaru = floor_date(dataPomiaru, unit = jednostkaCzasu)) %>%
    group_by(substancja, dzienPomiaru) %>%
    summarise(minimum = min(pomiar, na.rm = T),
              maksimum = max(pomiar, na.rm = T),
              srednia = mean(pomiar, na.rm = T)) %>%
    gather(statystyka, wartosc, -dzienPomiaru, -substancja) -> tmp
  if(!("min" %in% ktoreStatystyki)) tmp %>% filter(statystyka != "minimum") -> tmp
  if(!("maks" %in% ktoreStatystyki)) tmp %>% filter(statystyka != "maksimum") -> tmp
  if(!("srednia" %in% ktoreStatystyki)) tmp %>% filter(statystyka != "srednia") -> tmp
  tmp
}
mstaniak/AnalizaZanieczyszczen documentation built on Aug. 26, 2019, 6:18 p.m.