Update Readme.md

Module 3
parent e1437320
......@@ -200,4 +200,88 @@ Voici quelques billets intéressants sur le sujet:
- organiser l'information et la rendre exploitable
- la rendre disponible
**Pour la suite du MOOC, choix de RStudio**
\ No newline at end of file
**Pour la suite du MOOC, choix de RStudio**
:27-04-2020:
# Module 3 : La main à la pâte : une analyse réplicable
## 1. Une analyse réplicable, c'est quoi ?
Dans le cadre d'une *analyse traditionnelle* on se concentre sur les résultats et on montre un résumé méthodologique
des calculs et discussion des conclusions.
Concernant, l'*analyse réplicable* = 4 blocs = résultats + discussion mais aussi code + explication (des calculs menés)
Pourquoi? facilité la reproduction de cette analyse, facile à modifier, facile à inspecter et vérifier!
## 2. Etude de cas : l'incidence de syndromes grippaux
Jeu de données [Réseau Sentinelles](http://www.sentiweb.fr) Inserm, UPMC
Présentation du jeu de données :
- 2ème ligne présente les étiquettes des colonnes de données
- 1ère colonne = année et semaine en format iso (= l'année commence par la semaine qui contient le 4 janvier)
- 3ème colonne = données d'intérêt = *incidence des syndromes grippaux*
- anomalie dans le jeu de données ? ex: absence de données pour la semaine 19 de l'année 1989 (198919)
- dans notre cas, peu d'importance car ce n'est qu'une semaine sur une suite de longues années --> point à supprimer
- ATTENTION pour la suppression de ce point : ne pas le supprimer directement sur les raw data du jeu de données car PAS REPLICABLE
### A RETENIR
- Aucune modification des données ne doit être faîtes "à la main" car sinon aucune trace visible de l'intervention
- Tout doit se faire dans du code
### NB
Le site Web du Réseau Sentinelles que nous utilisons dans ce module a subi des modifications importantes après le tournage des vidéos.
L'accès aux données ne se passe plus comme montré. Il faut passer par les menus "Surveillance continue" - "Base de données" - "Accès aux données" et cliquer sur l'onglet "Télécharger",
puis choisir les données au format *CSV* pour la France Métropolitaine.
Le format des données téléchargées a aussi légèrement changé, il faut adapter le traitement des données manquantes. Le code que nous montrons dans les vidéos ne fonctionne plus avec
les données d'aujourd'hui. Une version mise à jour est disponible [ici](https://www.fun-mooc.fr/courses/course-v1:inria+41016+self-paced/courseware/5b932aa591d245d48d8943385cb3120a/bd37d027f9e54180b7657296967d3ef9/1?activate_block_id=block-v1%3Ainria%2B41016%2Bself-paced%2Btype%40vertical%2Bblock%4002a68b059f844a61ac3998729b78678d).
## 3. Crééer un document computationnel et importer les données (parcours 3B.)
### 3.1. Choix initiaux
- Environnement RStudio
- Langage R
- Bibliothèque *parsedate* pour la gestion des dates en format *iso*
### 3.2. Créer un document computationnel
- Créer un nouveau document du type *RMarkdown* nommé "Analyse de l'incidence du syndrome grippal"
### 3.3. Importer des données
- Télécharger les données (il faut connaître l'url du téléchargement) via le code `data_url = ""` accessible dans les téléchargements
- ici url est : https://www.sentiweb.fr/datasets/incidence-PAY-3.csv
- lire les données `data = read.csv (data_url, skip=1)`
- afficher le début des données `head(data)` : ordre chronologique inverse (1ère ligne = dernier point du jeu de données)
- afficher la fin du jeu de données `tail(data)`
### 3.4. Données manquantes et comment les gérer
- Dans quelles lignes il y a des données manquantes (analyse R ligne par ligne, on regarde pour une ligne i dans chaque colonne s'il y a une na) ?
- `lignes_na = apply(data, 1, function(x)any(is.na(x)))` puis *afficher le contenu des lignes* `data[lignes_na,]`
- un dernier test à effectuer pour s'assurer que tous s'est bien passé : *inspecter les types de données* `class(data$week)` et `class(data$inc)`, incidence (inc) est de type factor car du aux données manquantes
- pour corriger le type factor, `data = read.csv(data_url, skip=1, na.strings = '-')` considérer le "-" comme une donnée manquante; puis `class(data$inc)` --> integer
## 4. Vérification et inspection (parcours 3B.)
--> préparer les données pour l'analyse
Bibliothèque supplémentaire utilisée pour lire la date format iso = *parsedate* `library(parsedate)`
### Comment réaliser la conversation de la date sous format iso?
1. convertir l'entier (yyyyww) sous forme d'une chaîne de caractère
- `date = 199501`
- `ws = paste(date)`
- `iso = paste0(substring(ws, 1, 4), "-W", substring(ws, 5,6))`
- `iso`
Nous pouvons aussi faire appel à la fonction *`parse_iso_8601()`* pour obtenir une date
--> on obtient une date yyyy-mm-dd où le jour donné est le lundi du mois.
2. *Il faut appliquer cette procédure à chaque ligne du jeu de données* en écrivant une fonction
`convert_week=function(date) {
ws=paste(date)
iso = paste0(substring(ws, 1, 4), "-W", substring(ws, 5, 6))
as.character(parse_iso_8601(iso))
}`
mettre les résultats dans une nouvelle colonne `data$date = as.Date(sapply(data$week, convert_week))` puis `class(date$date)`
$-->$ voir les notes du document module3_ressources_analyse-syndrome-grippal-rstudio.Rmd
3. Trier les données pour qu'elles soient dans l'ordre chronologique
## 5. Questions et réponses (parcours 3B.)
voir les notes du document analyse-syndrome-grippal-rstudio.Rmd
** Travail pratique évalué par les pairs **
# Module 4 : Vers une étude reproductible : la réalité du terrain
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment