--- title: "Analyse de l'incidence de la varicelle" author: "Thinhinane HAMITOUCHE" date: "29/09/2025" output: https://www.sentiweb.fr/datasets/all/inc-25-RDD.csv --- # Charger les librairies library(parsedate) # URL du CSV varicelle data_url <- "https://www.sentiweb.fr/datasets/all/inc-25-RDD.csv" # Télécharger si le fichier local n'existe pas if (!file.exists("module3/exo2/varicelle.csv")) { download.file(data_url, destfile="module3/exo2/varicelle.csv", mode="wb") } # Lire les données data <- read.csv("module3/exo2/varicelle.csv", skip=1, na.strings=c("-")) head(data) tail(data) # Vérifier les valeurs manquantes na_records <- apply(data, 1, function(x) any(is.na(x))) data[na_records,] # Conversion des semaines en date convert_week <- function(w) { ws <- paste(w) iso <- paste0(substring(ws,1,4), "-W", substring(ws,5,6)) as.character(parse_iso_8601(iso)) } data$date <- as.Date(convert_week(data$week)) data <- data[order(data$date),] # Vérifier l’espacement des semaines all(diff(data$date) == 7) # Affichage initial plot(data$date, data$inc, type="l", xlab="Date", ylab="Incidence hebdomadaire") with(tail(data,200), plot(date, inc, type="l", xlab="Date", ylab="Incidence hebdomadaire")) # Calcul de l’incidence annuelle avec début 1er septembre pic_annuel <- function(annee) { debut <- paste0(annee-1,"-09-01") fin <- paste0(annee,"-09-01") semaines <- data$date > debut & data$date <= fin sum(data$inc[semaines], na.rm=TRUE) } # Appliquer à toutes les années annees <- 1986:2018 inc_annuelle <- data.frame( annee = annees, incidence = sapply(annees, pic_annuel) ) # Affichage head(inc_annuelle) plot(inc_annuelle$annee, inc_annuelle$incidence, type="p", xlab="Année", ylab="Incidence annuelle") hist(inc_annuelle$incidence, breaks=10, xlab="Incidence annuelle", ylab="Nb d'observations", main="") # Identifier l’année avec épidémie la plus forte et la plus faible annee_forte <- inc_annuelle$annee[which.max(inc_annuelle$incidence)] annee_faible <- inc_annuelle$annee[which.min(inc_annuelle$incidence)] cat("Année avec l'épidémie la plus forte :", annee_forte, "\n") cat("Année avec l'épidémie la plus faible :", annee_faible, "\n")