-
Notifications
You must be signed in to change notification settings - Fork 42
Structure du texte
Il s'agit d'organiser le site en trois grandes entrées thématiques (Manipuler / Analyser / Approfondir) afin de faciliter la recherche d'un chapitre précis.
Les entrées seront organisées en sous-section dans une perspective du type Débutant / Intermédiaire / Avancé.
-
Manipuler
- Prise en main (tout ce qu'il faut pour installer R, charger des données et les appeler)
- Manipulations de données (intermédiaire, i.e. tris, sous-populations, fusions, dates...)
- Manipulations de données (avancé, i.e. aggrégation, restructuration, SQL, scrapping...)
-
Analyser
- Statistiques introductives (stats et graphs uni- et bivariés)
- Statistiques intermédiaires (modélisées, e.g. tests, régressions, analyses factorielles, clustering...)
- Statistiques avancées (hyper-modélisées, e.g. analyse de survie, de séquences...)
-
Approfondir
- Graphiques (ggplot2 avancé, lattice avancé, graphiques complexes...)
- Programmation (syntaxe, Git, shiny, scrapping...)
- Divers (astuces, exemples d'analyses...)
La page d'accueil comportera un onglet *Débuter avec R et RStudio qui proposera un plan de cours pour les personnes découvrant R, à savoir :
- Manipuler > Prise en main
- Analyser > Statistiques introductives
- Manipuler > Manipulations de données
- Analyser > Statistiques intermédiares
-
Présentation et Philosophie
- Extrait du chapitre actuel Présentation et Installation
-
Installation de R et Rstudio
- Extrait du chapitre actuel Présentation et Installation
-
Extensions
- Extrait du chapitre actuel Présentation et Installation
- Premier contact
- Premier travail avec les données
- Organiser ses fichiers
- Import de données
-
Variables
- Extrait du chapitre actuel Manipulation de données
- Introduction des facteurs, puis des données labellisées (différences de structures)
-
Indexation
- Extrait du chapitre actuel Manipulation de données
- Indexation directe, par nom, par condition
- R Base only
-
Recodage
- Extrait du chapitre actuel Manipulation de données
- R Base only + interfaces interactives de questionr
- Exporter des graphiques
- Où trouver de l'aide ?
Une fois les chapitres introductifs à dplyr et data.table (reprenant ce qui a été vu dans prise en main), les chapitres suivant de cette section présenteront à la fois comment faire avec R Base, dplyr et data.table, successivement, lorsque c'est pertinent.
- Introduction à dplyr
- Introduction à data.table
- Doublons
-
Tris
- Extrait du chapitre actuel Manipulation de données
- R Base + dplyr + data.table
-
Sous-ensembles
- Extrait du chapitre actuel Manipulation de données
- R Base + dplyr + data.table
-
Fusion de tables
- Extrait du chapitre actuel Manipulation de données
- R Base + dplyr + data.table
-
Gestion des dates
- R Base et lubridate
- les différents formats de dates
- intervalles, périodes, durées
- calculs sur les dates
-
Aggrégation
- summarise, by...
- min, max, mean, first, last...
-
Fonctions à fenêtre
- lead, lag
- ranking
- cumulative functions
- rolling functions (RcppRoll)
-
Restructuration de données
- tidy data
- reshape2, tidyr
-
Manipulation de texte
- stringin stringr
- readxml?
- Bases de données SQL
-
Collecter des données sur le web
- scraping HTML/XML avec XPath : rvest (XML en backend)
- fichiers JSON
- Export de données
- Export de graphiques
- Export de tableaux
On utilisera à la fois des données de types micro (e.g. hdv2009) et macro (e.g. rp99), en précisant à chaque fois que c'est nécessaires les différences entre facteurs et données labellisées.
On ne présentera pas ici les avantages d'utiliser dplyr ou data.table. Normalement, toutes les fonctions présentées seront compatibles à la fois avec les data.frame, les tbl_df et les data.table. Si certaines fonctions de R base n'était pas compatible, il faudra faire un encadré.
Ne rien inclure qui suppose une connaissance des distributions théoriques, laisser ça pour les deux premiers chapitres de stats. intermédiaires.
-
Statistiques univariées
- auteur(s) : fb, jl
- données : questionr::hdv2003 (individus)
- classe : data.frame
- contenu : distributions (histogrammes, proportions), one-tailed tests
-
Graphiques univariés (avec R base)
- auteur(s) : fb, jl
- données : questionr::rp99 (communes)
- classe : data.frame
- contenu : distributions (kernel density, ecdf), export via R et via RStudio
-
Statistiques bivariées
- auteur(s) : fb, jl
- données : questionr::hdv2003
- classe : data.frame
- contenu : corrélation, tableaux croisés
-
Graphiques bivariés (avec R base + ggplot2) : discussion
- auteur(s) : fb
- données : debt (pays-années)
- classe : data_frame (mais en fait pas nécessaire)
- contenu : démo de ggplot2 avec geom_point, geom_line, geom_smooth, aes, scale, facet
-
Graphiques de données libellées (avec ggplot2)
- auteur(s) :
- données :
- classe :
- contenu : graphiques de mesures nominales/ordinales
-
Données pondérées (avec survey) (discussion)
- auteur(s) : jl
- données : questionr::hdv2003
- classe : survey
- contenu : attention, ne pas présenter ici les plans d'échantillonnage complexe
-
Graphiques d'objets pondérés (avec survey + ggplot2)
- auteur(s) :
- données :
- classe :
- contenu : geom_pointrange
Utiliser broom et survey partout où c'est possible.
-
Comparaison de moyennes
- auteur(s) :
- données :
- classe :
- contenu : tests paramétriques
-
Comparaison de proportions
- auteur(s) :
- données :
- classe :
- contenu : tests non paramétriques (khi-deux, odds ratios)
-
Régression linéaire (avec lm + broom)
- auteur(s) :
- données :
- classe : lm, survey
- contenu : régressions simples et multiples, lm + broom, diagnostics
-
Régression logistique
- auteur(s) :
- données :
- classe : glm, survey
- contenu : glm + broom, puis svyglm
-
Analyse en composante prinicipale (ACP)
- auteur(s) :
- données :
- classe : ade4 et FactoMineR
- contenu : analyse de correspondances, composantes principales
-
Analyse des correspondances multiples (ACM)
- auteur(s) :
- données :
- classe : ade4 et FactoMineR
- contenu : variables supplémentaires
-
Classification ascendante hiérarchique (CAH)
- auteur(s) : jl
- données : hdv2003
- classe : hclust, agnes, cluster, ade4 et FactoMineR
- contenu : variables supplémentaires
-
Modèles linéaires à effets mixtes
- lmer
- Modèles GEE
-
Analyse de survie
- survival
- kaplan meier, cox
-
Analyse de séquences
- TraMineR
- Séries temporelles
-
Analyse de réseaux
- discussion
- à découper en plusieurs chapitres ? création d'un objets réseau / visualiation / mesures, indicateurs / modélisation
-
Analyse spatiale
- contenu encore un peu flou
- autocorréalation spatiale
- interpolation spatiale par exemple
-
ggplot2 et la grammaire des graphiques
- discussion
- présentation des différents éléments d'un graphique
- les esthétiques
- les géométries
- les coordonnées
- les échelles
- les facettes
- la légende
-
Étendre ggplot2
- ggfortigy
- ggally
- ggdendro
- ggtern
- lattice : graphiques et formules
-
Diagrammes
- discussion
- diagramme, graphviz, diagrammeR
-
Représenter des flux
- discussion
- diagrammes de Sankey riverplot, rchart, d3js
- visualisation circulaire avec circlize et arcdiagram
-
Réseaux dynamiques
- avec Gephi + Sigma.js
- avec R + .gif (animation)
- avec d3 ou ndtv
- voir comment articuler avec les chapitres d'analyse (qui peuvent contenir les graphs non dynamiques)
- ggvis et les graphiques interactifs
- htmlwidjets et la puissance de javascript
-
Cartes
- discussion
- à découper en plusieurs chapitres
- à articuler avec analyse spatiale
- Formules (la notation "équation")
-
Structures conditionnelles
- conditions : if/else
- boucles : for/while
-
Expressions régulières
- grepl, gsub, str_count, str_match, str_extract, str_extract_al
-
Écrire ses propres fonctions
- messages : print, cat
- contrôle : stopifnot, message/warning/error
-
Shiny et les interfaces interactives
- ex. l'appli "Prénoms" de Baptiste Coulmont ?
-
RStudio et Git
- GitHub et GitLab (le second offrant gratuitement des rep privés)
-
Développer un package
- présentation de base avec roxygen et dvpt sous RStudio
- renvoyer vers d'autres ressources pour aller plus loin
Cela peut être des astuces ou des exemples de code.
- Calculer un âge sous R