Mesures de la Concordance Inter-Evaluateurs dans R

Introduction à R pour les Analyses de Concordance Inter-Juges

R est un logiciel statistique gratuit et puissant pour analyser et visualiser des données. Si vous voulez apprendre facilement l’essentiel de la programmation R, visitez notre série de tutoriels disponibles sur STHDA : http://www.sthda.com/english/wiki/r-basics-quick-and-easy.

Dans ce chapitre, vous apprendrez:

  • une très brève introduction à R, pour installer R/RStudio ainsi que pour importer vos données dans R et installer les packages nécessaires.
  • introduction à la structure des données catégorielles
  • les bases de la création de tableaux de contingence

Contents:

Livre associé

Inter-Rater Reliability Essentials: Practical Guide in R

Installer R et RStudio

Installation standard

R et RStudio peuvent être installés sur les plates-formes Windows, MAC OSX et Linux. RStudio est un environnement de développement intégré pour R qui facilite l’utilisation de R. Il comprend une console, un éditeur de code et des outils de traçage.

  1. R peut être téléchargé et installé à partir de la page Web du Comprehensive R Archive Network (CRAN) (http://cran.r-project.org/)
  2. Après avoir installé le logiciel R, installez également le logiciel RStudio disponible sur : http://www.rstudio.com/products/RStudio/.
  3. Lancez RStudio et commencez à utiliser R à l’intérieur de Rstudio.

Interface Rstudio

R en ligne

R est également accessible en ligne sans aucune installation. Vous trouverez un exemple à l’adresse https://rdrr.io/snippets/. Ce site comprend des milliers de modules complémentaires.

Installer et charger les package R requis

Un package R est un ensemble de fonctionnalités qui étend les capacités de base de R. Par exemple, pour utiliser le code R fourni dans ce livre, vous devez installer les paquets R suivants:

  • tidyverse les packages, qui sont une collection de packages R partageant la même philosophie de programmation. Ces packages comprennent:
    • readr: pour importer des données dans R
    • dplyr: pour la manipulation des données
    • ggplot2: pour la visualisation des données.
  • datarium: contient des données de démonstration pour des analyses statistiques.
  • irrles packages “vcd” et “psych” : pour les mesures de fiabilité inter-évaluateurs. ce qui facilite, pour les débutants, la création de graphiques prêts à être publiés
  1. Installer le package tidyverse. L’installation de tidyverse installera automatiquement readr, dplyr, ggplot2 et plus encore. Tapez le code suivant dans la console R:
install.packages("tidyverse")
  1. Installer datarium, irr, vcd et psych
install.packages("datarium")
install.packages("irr")
install.packages("vcd")
install.packages("psych")
  1. Charger les packages requis. Après l’installation, vous devez d’abord charger le package pour utiliser les fonctions qu’il contient. La fonction library() est utilisée pour cette tâche. Une autre fonction est require(). Par exemple, pour charger le paquet vcd, tapez ceci:
library("vcd")

Maintenant, nous pouvons utiliser des fonctions R, telles que Kappa() [package vcd] pour calculer le Kappa de Cohen et le kappa pondérée.

Si vous avez besoin d’aide pour une fonction donnée, disons Kappa(), type this in R console: ?Kappa.

Format des données

Vos données doivent être de format rectangulaire, où les colonnes sont des variables et les lignes des observations (individus ou échantillons).

  • Les noms des colonnes doivent être compatibles avec les conventions d’appellation R. Évitez les colonnes avec des espaces vides et des caractères spéciaux. Bons noms de colonnes: long_jump or long.jump. Mauvais nom de colonne: long jump.
  • Évitez de commencer les noms de colonnes par un nombre. Utilisez plutôt une lettre. Bons noms de colonnes: sport_100m or x100m. Mauvais nom de colonne: 100m.
  • Remplacer les valeurs manquantes par NA (pour non disponible)

Par exemple, vos données devraient ressembler à ceci:

Plus d’informations ici : [Meilleures pratiques pour la préparation des fichiers de données en vue de leur importation dans R] (http://www.sthda.com/english/wiki/best-practices-in-preparing-data-files-for-importing-into-r)

Importez vos données dans R

Tout d’abord, enregistrez vos données au format txt ou csv et importez-les comme suit (il vous sera demandé de choisir le fichier):

library("readr")

# Lecture des fichiers délimités par des tabulations (.txt tab)
my_data <- read_tsv(file.choose())

# Lit les fichiers délimités par des virgules (,) (.csv)
my_data <- read_csv(file.choose())

# Lit les fichiers delimités par des points-virgules (;) (.csv)
my_data <- read_csv2(file.choose())

Pour en savoir plus sur l’importation de données dans R, consultez le lien suivant : http://www.sthda.com/english/wiki/importing-data-into-r

Jeu de données de démonstration

R est livré avec plusieurs jeux de données de démonstration pour jouer avec les fonctions R. Les jeux de données de démo R les plus utilisés sont les suivants : USArrests, iris and mtcars. Pour charger un jeu de données de démonstration, utilisez la fonction data() comme suit. La fonction head() est utilisée pour inspecter les données.

data("iris")   # Chargement
head(iris, n = 3)  # Impression des premières n = 3 lignes
##   Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1          5.1         3.5          1.4         0.2  setosa
## 2          4.9         3.0          1.4         0.2  setosa
## 3          4.7         3.2          1.3         0.2  setosa

Pour en savoir plus sur le jeu de données iris, tapez ceci:

?iris

Après avoir tapé le code R ci-dessus, vous verrez la description de l’ensemble de données “iris” : cet ensemble de données iris donne respectivement les mesures en centimètres des variables longueur et largeur des sépales, longueur et largeur des pétales, pour 50 fleurs de chacune des 3 espèces d’iris. Les espèces d’Iris sont setosa, versicolor et virginica.

Manipulation des données

Après avoir importé vos données dans R, vous pouvez facilement les manipuler à l’aide de la dplyr package, which can be installed using the R code: install.packages("dplyr").

Après avoir chargé dplyr, vous pouvez utiliser les fonctions R suivantes:

  • filter(): Sélectionner des lignes (observations/échantillons) en fonction de leurs valeurs.
  • distinct(): Supprimer les lignes en double.
  • arrange(): Réorganiser les lignes.
  • select(): Sélectionner les colonnes (variables) par leur nom.
  • rename(): Renommer les colonnes.
  • mutate(): Ajouter/créer de nouvelles variables.
  • summarise(): Calculer des statistiques descriptives (p. ex., calculer la moyenne ou la somme)
  • group_by(): Fonctionne sur un subset de données.

Notez que le package dplyr permet d’utiliser l’opérateur d’enchaînement (%>%) pour combiner plusieurs opérations. Par exemple, x %>% f est équivalent à f(x). A l’aide de l’opérateur (%>%), la sortie de chaque opération est transmise à l’opération suivante. Ceci facilite la programmation de R.

Pour en savoir plus sur la manipulation des données, cliquez sur ce lien : https://www.datanovia.com/en/courses/data-manipulation-in-r/

Travailler avec des données catégorielles

Définition

Les variables catégorielles sont des variables dont les valeurs comprennent un ensemble de groupes. Exemples de variables catégorielles : sex (homme, femme), classes de passagers (1er, 2eme, 3eme classe), fumeurs (oui, non), couleur des yeux (brun, bleu, noisette, vert), etc.

Il existe différents types de variables catégorielles selon le nombre de catégories qu’elles contiennent:

  • Les variables binaires ou dichotomiques ne contiennent que deux groupes
  • Les variables polytomiques contiennent trois groupes ou plus

Les variables catégorielles contenant des catégories ordonnées, telles que les classes de passagers (1er < 2ème < 3ème), sont appelées variables ordinales. Les variables catégorielles contenant des catégories non ordonnées, telles que la couleur des yeux (marron, bleu, noisette, vert), sont appelées variables minimees.

Structure des données

Les données catégorielles peuvent être disponibles sous différentes formes, notamment:

  • Forme de cas, dans laquelle chaque ligne correspond à un cas (ou à un individu)
  • Forme de fréquence, dans laquelle les données sont présentées sous forme de tableaux. Les cellules du tableau contiennent les fréquences des catégories (croisées ou non).

Exemple de forme de cas : Données HairEyeColor

##    Hair   Eye
## 1 Black Brown
## 2 Black Brown
## 3 Black Brown
## 4 Black Brown

Exemple de forme de fréquence (1/2) : Tableau croisé

##        Eye
## Hair    Brown Blue Hazel Green
##   Black    32   11    10     3
##   Brown    53   50    25    15
##   Red      10   10     7     7
##   Blond     3   30     5     8

Exemple de forme de fréquence (2/2) : Data frame

##    Hair   Eye Freq
## 1 Black Brown   32
## 2 Brown Brown   53
## 3   Red Brown   10
## 4 Blond Brown    3

Créer une table de contingence

Cette section décrit comment créer une table de contingence dans R. Vous apprendrez à:

  • Créez des tableaux unidimensionnel, bidimensionnel et tridimensionnel contenant les fréquences
  • Calculer les proportions et, additionner les totaux des lignes et des colonnes
  • Transformer une table de contingence multidimensionnelle en un beau format plat bidimensionnelle
  • Définir un tableau de contingence

Données d’entrée

data("titanic.raw", package = "datarium")
head(titanic.raw)
##   Class  Sex   Age Survived
## 1   3rd Male Child       No
## 2   3rd Male Child       No
## 3   3rd Male Child       No
## 4   3rd Male Child       No
## 5   3rd Male Child       No
## 6   3rd Male Child       No

Fonctions R clés

  • table() et xtabs() : Créer des tableaux de contingence contenant les fréquences. xtabs permet d’utiliser des formules.
  • prop.table(): Calculer les proportions sur les lignes, les colonnes ou les totaux globaux
  • margin.table(): Calculer le total des lignes, des colonnes ou le total global (c.-à-d. des sommes)

Créer des tableaux de contingence

Utilisation de xtabs() : interface de formule

# Tableau à une dimension
xtabs(~Class, data = titanic.raw)
## Class
##  1st  2nd  3rd Crew 
##  325  285  706  885
# Tableau bidimensionnelle
xtabs(~Class + Survived, data = titanic.raw)
##       Survived
## Class   No Yes
##   1st  122 203
##   2nd  167 118
##   3rd  528 178
##   Crew 673 212
# Table à trois dimensions
xtabs(~Class + Survived + Sex, data = titanic.raw)
## , , Sex = Male
## 
##       Survived
## Class   No Yes
##   1st  118  62
##   2nd  154  25
##   3rd  422  88
##   Crew 670 192
## 
## , , Sex = Female
## 
##       Survived
## Class   No Yes
##   1st    4 141
##   2nd   13  93
##   3rd  106  90
##   Crew   3  20

Utilisation de table()

# Table à une dimension ---------------
# utilisez ceci : 
table(titanic.raw$Class)
# Ou ceci
table(titanic.raw[, "Class"])
# ou ceci:
with(titanic.raw, table(Class))

# Table à deux dimensions ----------------
with(titanic.raw, table(Class, Survived))

# Table à trois dimensions ----------------
with(titanic.raw, table(Class, Survived, Sex))

Calculer les marges : totaux des lignes et des colonnes

# Tableau bidimensionnelle
xtab <- xtabs(~Class + Survived, data = titanic.raw)
# Calculer les totaux de lignes
margin.table(xtab, 1)
## Class
##  1st  2nd  3rd Crew 
##  325  285  706  885
# Calculer les totaux des colonnes
margin.table(xtab, 2)
## Survived
##   No  Yes 
## 1490  711

Vous pouvez également utiliser les fonctions rowSums() and colSums().

Ajout de lignes et de colonnes dans le tableau

addmargins(xtab)
##       Survived
## Class    No  Yes  Sum
##   1st   122  203  325
##   2nd   167  118  285
##   3rd   528  178  706
##   Crew  673  212  885
##   Sum  1490  711 2201

Calculer les proportions

# Fréquences par rapport au total des lignes
prop.table(xtab, 1)
##       Survived
## Class     No   Yes
##   1st  0.375 0.625
##   2nd  0.586 0.414
##   3rd  0.748 0.252
##   Crew 0.760 0.240
# Fréquences par rapport au total de la colonne
prop.table(xtab, 2)
##       Survived
## Class      No    Yes
##   1st  0.0819 0.2855
##   2nd  0.1121 0.1660
##   3rd  0.3544 0.2504
##   Crew 0.4517 0.2982
# Fréquences par rapport au total général de la table
xtab/sum(xtab)
##       Survived
## Class      No    Yes
##   1st  0.0554 0.0922
##   2nd  0.0759 0.0536
##   3rd  0.2399 0.0809
##   Crew 0.3058 0.0963

Fermez votre session R/RStudio

Chaque fois que vous fermez R/RStudio, il vous sera demandé si vous souhaitez sauvegarder les données de votre session R. Si vous décidez de sauvegarder, les données seront disponibles dans les prochaines sessions R.

Résumé

Ce chapitre fournit une introduction rapide à R et une brève description de la façon de travailler avec les données catégorielles dans R.



Version: English

(Next Lesson) Kappa de Cohen dans R: Pour Deux Variables Catégorielles
Back to Mesures de la Concordance Inter-Evaluateurs dans R

No Comments

Give a comment

Want to post an issue with R? If yes, please make sure you have read this: How to Include Reproducible R Script Examples in Datanovia Comments