Sur les données FormationPreparationDesDonnees.RData, table exercice :

1/ calculer le taux de quantification pour chaque molécule et chacune des années : chaque molécule est identifiée par son code_parametre, le taux de quantification est le nombre de fois qu'une molécule est retrouvée (càd si code_remarque = 1) sur le nombre de fois où elle a été cherchée (càd si code_remarque = 1, 2, 7 ou 10). Pour cela :

2/ trouver pour chaque station, sur l’année 2016, le prélèvement pour lequel la concentration cumulée, toutes substances confondues, est la plus élevée (~ le prélèvement le plus pollué). Pour cela :

library(tidyverse)
library(lubridate)
load(file = system.file("extdata", "FormationPreparationDesDonnees.RData", package = "savoirfR"))

Résultats attendus :

rm(list = ls())
library(tidyverse)
library(lubridate)

load(file = "extdata/FormationPreparationDesDonnees.RData")

Résultat attendu pour le taux de quantification par molécule et année :

# 1/ taux de quantification par molécule et année
taux_quantif_annuels <- exercice %>%
  mutate(annee = year(date_prelevement),
         presence = if_else(code_remarque == 1, 1, 0),
         recherchee = if_else(code_remarque %in% c(1, 2, 7, 10), 1, 0)
  ) %>%
  group_by(annee, code_parametre) %>%
  summarise(taux_quantif = sum(presence) / sum(recherchee) * 100, .groups = "drop")
taux_quantif_annuels

Résultat attendu pour prélèvement le plus pollué de chaque station en 2016 :

# 2/ prélèvement le plus pollué de chaque station en 2016

prelvmt_plus_pollue_2016 <- exercice %>%
  filter(code_remarque == 1, year(date_prelevement) == 2016) %>%
  group_by(libelle_station, code_prelevement) %>%
  summarise(concentration_cumulee = sum(resultat_analyse), .groups = "drop_last") %>%
  slice_max(concentration_cumulee, n = 1) %>%
  ungroup()

# ou

prelvmt_plus_pollue_2016 <- exercice %>%
  filter(code_remarque == 1, year(date_prelevement) == 2016) %>%
  group_by(libelle_station, code_prelevement) %>%
  summarise(concentration_cumulee = sum(resultat_analyse), .groups = "drop_last") %>%
  filter(concentration_cumulee == max(concentration_cumulee)) %>%
  ungroup()

prelvmt_plus_pollue_2016


MTES-MCT/parcours_r_exercices documentation built on Dec. 3, 2024, 1:29 p.m.