Le but est ici de reproduire des graphes semblables à ceux du [South China Morning Post (SCMP)](https://www.scmp.com/), sur la page [The Coronavirus Pandemic](https://www.scmp.com/coronavirus?src=homepage_covid_widget) et qui montrent pour différents pays le nombre cumulé (c'est-à-dire le nombre total de cas depuis le début de l'épidémie) de personnes atteintes de la maladie à coronavirus 2019.
# Exercice proprement dit
## Méthodes
Les données utilisées sont celles fournies par le Johns Hopkins University Center for Systems Science and Engineering (JHU CSSE) et accessibles sous ce [lien](https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv).
Les données ainsi recueillies ont été épurées puis analysées avec `r R.Version()$version.string` s'exécutant sous `r R.Version()$os`. Les graphiques ont été générés avec le package {ggplot2}.
## Import des données
```{r data_import}
# Enregistrement du lien de la base dans l'objet "link"
link <- "https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv"
# Import du contenu du fichier csv dans une base de données :
L'on se rend compte que les incidences présentées dans la base de données sont des incidences cumulées.
Nous pouvons recalculer les incidences quotidiennes.
```{r}
# Calcul des incidences journalières
dff_p <- dff_p %>%
group_by(Country.Region) %>% # Pour les regrouper par pays
mutate(Incidence_journaliere = Incidence - lag(Incidence)) # calcul des incidences journalières
# Aperçu de la base
tail(dff_p)
```
## Graphique des incidences journalières
```{r}
dff_p %>%
ggplot(aes(x = Dates, y = Incidence_journaliere, color = Country.Region)) +
geom_line()
```
Quelques cas d'incidences négatives pouvant correspondre en réalité à des rectifications de statistiques nationales. Nous les définirons comme données manquantes.
labs(x = "", y = "Incidences journalières", color = "Pays",
title = "Incidences journalières de covid 19") +
theme(legend.position = "none") # Pour supprimer la légende
```
## Nombre total de cas confirmés
Les incidences présentées par défaut étant des incidences cumulées, le nombre total de cas correspond donc à l'incidence cumulée à la date la plus récente, ou à l'incidence maximale renseignée (au cas où un pays serait en retard dans la notification de ses données).
```{r fig.cap="Nombre de cas confirmés de covid 19"}
max(dff_p$Dates)
dff_p %>% filter(Dates == max(dff_p$Dates)) %>% # Date la plus récente uniquement
ggplot(aes(x = fct_reorder(Country.Region, Incidence), y = Incidence)) +
geom_col() +
coord_flip() +
theme_bw() +
labs(x = "", title = paste("Nombre de total de cas confirmés de covid 19 au", Sys.Date())) +