#per indicar en quina carpeta vols fer correr el codi ----
#setwd()

#install pckg ----
#install.packages("dplyr")
#install.packages("openair")
#install.packages("lubridate")



#open library ----
library(dplyr)           #si surt error per filter, li hem de dir que volem la funcio filter de stats i no de dplyr (stats::filter())
library(openair)
library(lubridate)


#read csv file ----
df <- read.csv("/home/abarrant/Documents/TFM/test_df.csv")


#convertir dates ----
df$date_end <- as.POSIXct(df$date_end, "%Y-%m-%d %H:%M:%S",tz="Europe/Madrid")

df <- df %>% 
  mutate(date = as.POSIXct(date_end, "%Y-%m-%d %H:%M:%S",tz="Europe/Madrid"))


#filtrar el dataframe  amb dplyr----
exceedances <- df %>%
  filter(conc>200 & contaminant =="NO2")

manlleu <- df %>%
  filter(nom_estacio == "Manlleu")

#equivalent amb R base
#exceedances <- stats::filter(df$conc>200)
#exceedances <- df[df$conc>200,]  #totes les columnes afegim la coma


#plot ----
info_plot <- manlleu %>%
  timeVariation(pollutant = "conc", 
                statistic = "median")

info_plot <- timeVariation(manlleu, pollutant = "conc", statistic = "median") #alternativa sense el dplyr (%>%)


#calcul de mitjanes o maxims ----
daily <- df %>%
  mutate(day=date(date_end))  %>%  #crear una columna amb nomes les dates (dies, no hores)
  group_by(day) %>%
  summarise(n = sum(!is.na(conc)),
            mean_conc = mean(conc, na.rm = T),   #nan remove true
            max_conc = max(conc, na.rm = T))  %>%
  mutate(date = as.POSIXct(day))



min_no2 <- df %>%
  filter(contaminant == "NO2" & nom_estacio == "Manlleu") %>%
  mutate(day=date(date_end))  %>%  #crear una columna amb nomes les dates (dies, no hores)
  group_by(day) %>%
  summarise(n = sum(!is.na(conc)),
            mean_conc = mean(conc, na.rm = T), 
            min_conc = min(conc, na.rm = T))  %>%
  mutate(date = as.POSIXct(day))
  
