library(irr)
data("anxiety", package = "irr")
head(anxiety, 4) rater1 rater2 rater3
1 3 3 2
2 3 6 1
3 3 4 4
4 4 6 4
Mesurez la cohérence des notes attribuées par plusieurs évaluateurs sur une échelle numérique — choisissez la bonne forme d’ICC (à un facteur vs à deux facteurs, cohérence vs accord, unique vs moyenne) et calculez-la avec irr et psych
Apprenez à calculer le coefficient de corrélation intraclasse (ICC) en R — la mesure d’accord pour des notes continues (numériques) attribuées par plusieurs évaluateurs. Choisissez la forme d’ICC correcte (modèle à un facteur vs à deux facteurs, cohérence vs accord absolu, évaluateur unique vs moyenne) et calculez-la avec la fonction icc() de irr et la fonction ICC() de psych, puis interprétez la force de l’accord.
23 juin 2026
7 juillet 2026
irr::icc(), ou les six à la fois avec psych::ICC().Lorsque des évaluateurs notent des items sur une échelle numérique — trois médecins évaluant l’anxiété sur une échelle numérique, plusieurs relecteurs notant des dissertations — le kappa (pour les catégories) ne s’applique plus. Le coefficient de corrélation intraclasse (ICC) mesure à quel point les évaluateurs notent les mêmes sujets de manière cohérente : proche de 1 signifie que les évaluateurs s’accordent, proche de 0 qu’ils ne s’accordent pas.
Le piège est qu’« ICC » n’est pas un seul nombre — il existe six formes, et choisir la mauvaise donne un résultat trompeur. Cette leçon explique le choix et calcule l’ICC avec les paquets irr et psych.
Trois décisions déterminent la forme :
La plupart des études de fiabilité utilisent à deux facteurs, accord absolu, évaluateur unique. N’utilisez la moyenne que si votre mesure finale est la moyenne de plusieurs évaluateurs.
Interprétation de l’ICC (Koo & Li 2016) : en dessous de 0.50 faible · 0.50–0.75 modéré · 0.75–0.90 bon · au-dessus de 0.90 excellent — jugée sur la borne inférieure de l’IC à 95 % pour un rapport prudent.
Le jeu de données anxiety du paquet irr comporte 20 sujets chacun noté par 3 médecins sur une échelle numérique d’anxiété (une ligne par sujet, une colonne par évaluateur) :
rater1 rater2 rater3
1 3 3 2
2 3 6 1
3 3 4 4
4 4 6 4
Un graphique en courbes des notes de chaque médecin sur l’ensemble des sujets montre que les évaluateurs sont souvent en désaccord — les courbes se croisent au lieu de rester parallèles :
library(irr)
library(ggpubr)
data("anxiety", package = "irr")
n <- nrow(anxiety)
long <- data.frame(
subject = rep(1:n, 3),
rater = factor(rep(c("rater1", "rater2", "rater3"), each = n)),
score = c(anxiety$rater1, anxiety$rater2, anxiety$rater3)
)
ggline(long, x = "subject", y = "score", color = "rater", palette = "jco",
numeric.x.axis = TRUE, size = 0.6, xlab = "Subject", ylab = "Anxiety rating")
irr::icc() calcule une seule forme choisie. Pour l’ICC courant à deux facteurs, accord absolu, évaluateur unique :
Single Score Intraclass Correlation
Model: twoway
Type : agreement
Subjects = 20
Raters = 3
ICC(A,1) = 0.198
F-Test, H0: r0 = 0 ; H1: r0 > 0
F(19,39.7) = 1.83 , p = 0.0543
95%-Confidence Interval for ICC Population Values:
-0.039 < ICC < 0.494
L’ICC est de 0.20 avec un IC à 95 % d’environ [−0.04, 0.49] et p = 0.056 — un faible accord absolu. Les trois médecins ne donnent pas les mêmes valeurs d’anxiété, et l’intervalle inclut 0, de sorte que l’accord n’est même pas significatif.
psych::ICC() renvoie les six formes à la fois — choisissez la ligne qui correspond à votre plan :
Call: ICC(x = anxiety)
Intraclass correlation coefficients
type ICC F df1 df2 p lower bound upper bound
Single_raters_absolute ICC1 0.18 1.6 19 40 0.094 -0.077 0.48
Single_random_raters ICC2 0.20 1.8 19 38 0.056 -0.039 0.49
Single_fixed_raters ICC3 0.22 1.8 19 38 0.056 -0.046 0.52
Average_raters_absolute ICC1k 0.39 1.6 19 40 0.094 -0.275 0.74
Average_random_raters ICC2k 0.43 1.8 19 38 0.056 -0.127 0.75
Average_fixed_raters ICC3k 0.45 1.8 19 38 0.056 -0.153 0.77
Number of subjects = 20 Number of Judges = 3
See the help file for a discussion of the other 4 McGraw and Wong estimates,
Les lignes sont : ICC1 (à un facteur, unique), ICC2 (à deux facteurs accord, unique), ICC3 (à deux facteurs cohérence, unique) et ICC1k/ICC2k/ICC3k (les mêmes pour la moyenne des 3 évaluateurs). Notre forme choisie, à deux facteurs accord absolu évaluateur unique, est ICC2 ≈ 0.20 — concordant avec le résultat de irr. Remarquez que les formes moyenne d’évaluateurs (ICC2k) sont plus élevées : faire la moyenne des évaluateurs lisse leurs désaccords.
Le coefficient de corrélation intraclasse a été calculé pour évaluer l’accord entre trois médecins évaluant l’anxiété chez 20 sujets, à l’aide d’un modèle à effets aléatoires à deux facteurs, accord absolu, unité évaluateur unique. L’accord absolu entre les médecins était faible, ICC = 0.20 (IC à 95 %, −0.04 à 0.49), p = 0.056.
L’ICC partitionne la variance totale en composantes inter-sujets et intra-sujets (erreur) issues d’une ANOVA à effets mixtes. Dans la forme générale \(\text{ICC} = \dfrac{\sigma^2_{b}}{\sigma^2_{b} + \sigma^2_{w}}\), où \(\sigma^2_b\) est la variance entre les sujets (le signal que l’on veut voir suivi par les évaluateurs) et \(\sigma^2_w\) est la variance intra-sujet (le désaccord entre évaluateurs). Les formes d’accord absolu incluent la variance des évaluateurs (colonne) dans \(\sigma^2_w\), pénalisant les décalages systématiques entre évaluateurs ; les formes de cohérence l’excluent, demandant seulement si les évaluateurs classent les sujets de la même manière. Les formes moyenne divisent l’erreur par k, ce qui explique pourquoi elles sont plus grandes.
Calculez différentes formes d’ICC et comparez unique vs moyenne. Le bac à sable démarre au premier Run.
Demandez à Prova « J’ai plusieurs évaluateurs notant des sujets sur une échelle numérique — calcule le bon ICC pour mon plan et dis-moi si l’accord est bon » — elle répond avec du code que vous pouvez exécuter sur vos propres données et vous aide à choisir le modèle/type/unité. The runtime is the judge. Demander à Prova →
Vous avez choisi la mauvaise forme. Les six ICC peuvent beaucoup différer. Utilisez à deux facteurs quand les mêmes évaluateurs notent tout le monde (presque toujours) ; l’accord absolu (et non la cohérence) quand vous avez besoin des mêmes valeurs, et non seulement du même classement ; l’unité unique sauf si votre mesure finale est la moyenne de k évaluateurs.
Vous avez rapporté la cohérence alors qu’il vous fallait l’accord. La cohérence ignore les décalages systématiques — deux évaluateurs qui diffèrent toujours d’exactement 2 points ont une cohérence parfaite mais un accord faible. Si les valeurs réelles importent, rapportez l’accord absolu.
Vous avez jugé l’ICC sur la seule estimation ponctuelle. Les estimations d’ICC ont de larges intervalles avec peu de sujets. Rapportez et interprétez l’intervalle de confiance à 95 % (Koo & Li suggèrent de juger sur sa borne inférieure), comme le montre ici notre IC qui inclut 0.
L’ICC mesure l’accord ou la fiabilité de notes continues (numériques) attribuées par plusieurs évaluateurs aux mêmes sujets. C’est la proportion de la variance totale due aux différences entre les sujets (le signal) plutôt qu’au désaccord entre évaluateurs (le bruit) — proche de 1 signifie que les évaluateurs notent les sujets de façon cohérente, proche de 0 qu’ils ne le font pas. C’est l’équivalent, pour les données continues, du kappa de Cohen/Fleiss.
Trois choix : le modèle (à deux facteurs si les mêmes évaluateurs notent tout le monde, à un facteur sinon), le type (accord absolu si les valeurs exactes importent, cohérence si seul le classement importe) et l’unité (évaluateur unique, ou moyenne de k évaluateurs si c’est votre mesure finale). Le plus courant est à deux facteurs, accord absolu, évaluateur unique.
La cohérence demande si les évaluateurs classent les sujets de la même manière, en ignorant les différences systématiques de leur échelle (un évaluateur toujours 2 points au-dessus garde une cohérence parfaite). L’accord absolu demande s’ils donnent la même valeur, pénalisant ces décalages systématiques. Utilisez l’accord quand les nombres réels importent ; la cohérence quand seul l’ordre relatif importe.
En utilisant les repères de Koo & Li : en dessous de 0.50 c’est faible, 0.50–0.75 modéré, 0.75–0.90 bon, et au-dessus de 0.90 excellent. Comme les estimations d’ICC peuvent être imprécises avec peu de sujets, jugez sur la borne inférieure de l’intervalle de confiance à 95 % pour une conclusion prudente.
type = "consistency". Remplissez le blanc. Lequel est le plus élevé, et pourquoi ?Remplissez le blanc avec "agreement" (puis essayez "consistency"). Pour la question 2, rappelez-vous que la cohérence ignore les décalages systématiques tandis que l’accord les pénalise.
La cohérence est généralement plus élevée parce qu’elle ignore les décalages systématiques entre évaluateurs. Pour la question 2 : le décalage constant de 5 points laisse l’ICC de cohérence élevé (le classement est identique) mais fait chuter l’ICC d’accord (les valeurs ne sont jamais les mêmes) — exactement le cas où les deux formes divergent et où vous devez choisir celle qui correspond à votre besoin.
Vous savez maintenant calculer le coefficient de corrélation intraclasse en R : décidez du modèle (à un/deux facteurs), du type (cohérence/accord) et de l’unité (unique/moyenne), calculez une forme avec irr::icc() ou les six avec psych::ICC(), et interprétez la valeur — et son intervalle de confiance — sur l’échelle de Koo & Li. L’ICC est la bonne mesure de fiabilité dès lors que les évaluateurs notent sur une échelle continue, et choisir la forme adaptée à votre plan est tout l’enjeu.
Vous préférez un livre ? Inter-Rater Reliability Essentials est disponible en PDF téléchargeable — toutes les leçons de cette série, hors ligne et à vous.
Prouvez que vous savez le faire. Maîtrisez toute la série Fidélité inter-juges en R — suivez votre parcours, construisez des projets et obtenez un certificat.
Passez à Pro — Prova illimité sur vos propres données et un certificat vérifiable qui atteste la compétence.
dès 15 $/mois facturé annuellement
✓ Vous êtes Pro — continuez. The runtime is the judge.
Prêt à passer à la vitesse supérieure ?
Recevez les nouvelles leçons R & Python par e-mail
Pratique, reproductible, sans spam. Désinscription à tout moment.
Double opt-in. Nous ne partageons jamais votre e-mail.
Chaque résultat de cette page a été produit par le code montré, exécuté au moment du build contre un environnement R figé — modifiez n’importe quel bloc et faites Run pour le reproduire vous-même.
@online{2026,
author = {},
title = {Coefficient de corrélation intraclasse (ICC) en R : accord
pour notes continues},
date = {2026-06-23},
url = {https://www.datanovia.com/learn/biostatistics/inter-rater-reliability/icc-in-r},
langid = {fr}
}