bibliothèque(pwr) pwr.t.test(d = {effectd}, sig.level = {alpha}, power = {power}, type = "two.sample")Mode d'emploi
Quand l'utiliser ? Déterminez la taille minimale de l'échantillon avant de commencer une étude, en fonction de la puissance statistique visée et de l'ampleur de l'effet attendu.
Hypothèses. Vous avez un alpha prévu (généralement 0.05), une puissance cible (généralement 0.80) et une estimation de la taille de l'effet à partir de données pilotes ou de la littérature.
Erreurs fréquentes. Ne calculez pas la puissance statistique après la collecte des données pour justifier un résultat non significatif (la puissance statistique a posteriori n'est pas informative).
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Cohen J. Analyse de la puissance statistique pour les sciences du comportement. 2e éd. 1988.
Résultat attendu : 2 colonnes : Valeurs du groupe 1 | Valeurs du groupe 2
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : Valeurs du groupe 1 | Valeurs du groupe 2
g1 <- c({g1}) g2 <- c({g2}) t.test(g1, g2, var.equal = {eqvar})Mode d'emploi
Quand l'utiliser ? Comparer les moyennes de deux groupes indépendants sur une variable continue.
Hypothèses. Indépendance des observations ; distributions approximativement normales dans chaque groupe ; variances égales (ou utilisation de la correction de Welch).
Erreurs fréquentes. Ne pas utiliser pour des données appariées : utiliser plutôt le test t apparié. Vérifier d’abord la normalité pour les petits échantillons.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Étudiant. L'erreur probable d'une moyenne. Biometrika. 1908;6(1):1-25.
- Welch BL. La généralisation du problème de Student. Biometrika. 1947;34:28-35.
Résultat attendu : 2 colonnes : Avant / Condition A | Après / Condition B
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : Avant / Condition A | Après / Condition B
pré <- c({pré}) post <- c({post}) t.test(pré, post, paired = TRUE)Mode d'emploi
Quand l'utiliser ? Comparer deux mesures effectuées sur les mêmes sujets (avant/après, paires appariées).
Hypothèses. Les différences entre les paires suivent approximativement une loi normale.
Erreurs fréquentes. Valable uniquement lorsque les paires sont réellement appariées ; ne pas utiliser pour deux échantillons indépendants.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Étudiant. L'erreur probable d'une moyenne. Biometrika. 1908;6(1):1-25.
{p_r} # z : 2 * pnorm(-abs(z)) t : 2 * pt(-abs(t), df) # chi-carré : pchisq(x, df, lower.tail = FALSE) F : pf(x, df1, df2, lower.tail = FALSE)Mode d'emploi
Quand l'utiliser. Convertir une statistique de test (z, t, χ² ou F) en une valeur p sous l'hypothèse nulle.
Hypothèses. Vous disposez déjà d'une statistique correctement calculée et du nombre approprié de degrés de liberté.
Erreurs fréquentes. La valeur p ne représente ni la probabilité que l'hypothèse nulle soit vraie, ni l'ampleur d'un effet.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Wasserstein RL, Lazar NA. Déclaration de l'ASA sur les valeurs p. Am Stat. 2016;70:129-133.
Format attendu : Nombre d’observations (lignes sur de nouvelles lignes, séparées par des virgules)
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Nombre d’observations (lignes sur de nouvelles lignes, séparées par des virgules)
tbl <- matrix(c({obs_flat}), nrow = {nrows}, byrow = TRUE) chisq.test(tbl)Mode d'emploi
Quand l'utiliser ? Testez si deux variables catégorielles sont associées, à l'aide d'un tableau de contingence des effectifs.
Hypothèses. Le nombre attendu dans chaque cellule doit être d'au moins 5. Les observations sont indépendantes.
Erreurs fréquentes. Si les effectifs théoriques sont inférieurs à 5 (petits échantillons), utilisez plutôt le test exact de Fisher.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Pearson K. Sur le critère selon lequel un système donné de déviations… Philos Mag. 1900;50:157-175.
Format attendu : Valeurs d’exemple
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Valeurs d’exemple
x <- c({data}) t.test(x, conf.level = {conf})$conf.intMode d'emploi
Quand l'utiliser ? Estimer l'intervalle plausible pour une moyenne de population à partir d'un échantillon.
Hypothèses. L'échantillon est aléatoire ; pour de petites valeurs de n, la distribution sous-jacente est approximativement normale.
Erreurs fréquentes. Un intervalle de confiance à 95 % ne signifie pas qu'il y a 95 % de chances que la valeur réelle se situe dans cet intervalle.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Neyman J. Esquisse d'une théorie de l'estimation statistique. Philos Trans R Soc A. 1937;236:333-380.
Résultat attendu : 2 colonnes : Valeurs du groupe 1 | Valeurs du groupe 2
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : Valeurs du groupe 1 | Valeurs du groupe 2
g1 <- c({g1}) g2 <- c({g2}) library(effsize) cohen.d(g1, g2) cohen.d(g1, g2, hedges.correction = TRUE) # g de HedgesMode d'emploi
Quand l'utiliser ? Quantifier l'ampleur standardisée de la différence entre deux groupes.
Hypothèses. Données continues ; l’écart-type groupé est significatif (variances similaires).
Erreurs fréquentes. La taille de l'effet mesure l'ampleur, et non la signification statistique ou l'importance clinique.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Cohen J. Analyse de la puissance statistique pour les sciences du comportement. 1988.
Résultat attendu : une ligne par enregistrement, Étiquette : v1, v2…
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : une ligne par enregistrement, Étiquette : v1, v2…
df <- stack(list({anova_groups})) summary(aov(values ~ ind, data = df))Mode d'emploi
Quand l'utiliser ? Pour comparer simultanément les moyennes de trois groupes indépendants ou plus.
Hypothèses. Indépendance ; normalité au sein des groupes ; homogénéité des variances.
Erreurs fréquentes. N'effectuez pas plusieurs tests t par paires : cela augmente le risque d'erreur de type I.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Fisher RA. Méthodes statistiques pour les chercheurs. 1925.
Résultat attendu : 2 colonnes : Variable X | Variable Y
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : Variable X | Variable Y
x <- c({x}) y <- c({y}) cor.test(x, y, méthode = "{méthode}"{spearman_exact})Mode d'emploi
Quand l'utiliser. Mesurer la force et la direction d'une relation linéaire (Pearson) ou monotone (Spearman) entre deux variables.
Hypothèses. Pearson : linéarité, normalité, absence de valeurs aberrantes majeures. Spearman : relation monotone uniquement.
Erreurs fréquentes. Corrélation n'implique pas causalité. Examinez le nuage de points pour détecter toute non-linéarité.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Pearson K. Note sur la régression et l'héritage. Proc R Soc Lond. 1895;58:240-242.
- Spearman C. La preuve et la mesure de l'association. Am J Psychol. 1904;15:72-101.
tp <- {tp}; fp <- {fp}; fn <- {fn}; tn <- {tn} sens <- tp/(tp+fn); spec <- tn/(tn+fp) c(sensibilité = sens, spécificité = spec)Mode d'emploi
Quand l'utiliser ? Évaluer la performance du test diagnostique à partir d'un tableau comparatif 2×2 des résultats du test et de l'état réel de la maladie.
Hypothèses. Un étalon de référence valide (étalon-or) permet de classifier le véritable état de la maladie.
Erreurs fréquentes. La VPP et la VPN dépendent fortement de la prévalence de la maladie : il faut la signaler.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Altman DG, Bland JM. Tests diagnostiques 1 : sensibilité et spécificité. BMJ. 1994;308:1552.
Format attendu : Score, Étiquette : une par ligne (1 = positif, 0 = négatif)
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Score, Étiquette : une par ligne (1 = positif, 0 = négatif)
library(pROC) scores <- c({roc_scores}) labels <- c({roc_labels}) roc(labels, scores, direction = "{roc_dir}") # {roc_dir_note}Mode d'emploi
Quand l'utiliser ? Évaluer le pouvoir discriminant d'un test ou d'un score continu.
Hypothèses. Résultat binaire (0/1) ; prédicteur ou score continu.
Erreurs fréquentes. Une AUC proche de 0.5 signifie une absence de discrimination ; il ne faut pas surinterpréter un seuil unique.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Hanley JA, McNeil BJ. La signification et l'utilisation de l'aire sous une courbe ROC. Radiology. 1982;143:29-36.
tbl <- matrix(c({a},{b},{c},{d}), nrow = 2, byrow = TRUE) fisher.test(tbl) # ou epitools::oddsratio(tbl)Mode d'emploi
Quand utiliser ces méthodes ? Quantifier l’association dans un tableau 2×2 ; OR pour les études cas-témoins, RR pour les études de cohorte.
Hypothèses. Les comptages sont indépendants ; les cellules sont non nulles (sinon, appliquer une correction de continuité).
Erreurs fréquentes. Ne pas interpréter le rapport de cotes (OR) comme un risque relatif (RR) lorsque l'événement est fréquent (>10 %).
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Woolf B. Sur l'estimation de la relation entre le groupe sanguin et la maladie. Ann Hum Genet. 1955;19:251-253.
cer <- {cer}; eer <- {eer} arr <- cer - eer # > 0 bénéfice, < 0 dommage si (arr > 0) c(ARR = arr, NNT_bénéfice = plafond(arrondi(1/arr, 6))) sinon c(ARR = arr, NNH_dommage = plafond(arrondi(1/(eer - cer), 6)))Mode d'emploi
Quand l’utiliser. Exprimer le bénéfice du traitement en nombre de patients à traiter pour prévenir un événement.
Hypothèses. Les taux d'événements proviennent de groupes comparables sur un horizon temporel défini.
Erreurs fréquentes. Indiquez toujours l'horizon temporel ; le NNT n'a aucun sens sans cela.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Laupacis A, Sackett DL, Roberts RS. Évaluation des mesures cliniquement utiles. N Engl J Med. 1988;318:1728-1733.
Résultat attendu : une ligne par enregistrement, TP, FP, FN, TN
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : une ligne par enregistrement, TP, FP, FN, TN
bibliothèque(mada) dat <- read.csv(text = "TP,FP,FN,TN {dm_csv}") madad(dat); reitsma(dat)Mode d'emploi
Quand l'utiliser ? Regrouper les données de précision diagnostique (sensibilité et spécificité) issues de différentes études à l'aide d'un modèle à effets aléatoires.
Hypothèses. Chaque étude présente un tableau comparatif 2×2 des résultats des tests par rapport à la norme de référence.
Erreurs fréquentes. Le regroupement séparé de la sensibilité et de la spécificité ignore leur corrélation ; un modèle bivarié/HSROC est préférable lorsque cela est possible.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Reitsma JB, et al. Analyse bivariée de la sensibilité et de la spécificité. J Clin Epidemiol. 2005;58:982-990.
Format attendu : Sujets : un par ligne, nombre d’évaluateurs par catégorie
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Sujets : un par ligne, nombre d’évaluateurs par catégorie
library(irr) # lignes = sujets, colonnes = catégories (nombre d'évaluateurs) kappam.fleiss(évaluations)
Mode d'emploi
Quand l'utiliser. Mesurer le degré de concordance entre trois évaluateurs ou plus classant les sujets en catégories (kappa de Fleiss).
Hypothèses. Chaque sujet est évalué par le même nombre d'évaluateurs ; les catégories sont mutuellement exclusives.
Erreurs fréquentes. Le coefficient Kappa est sensible à la prévalence ; indiquez les fréquences par catégorie en plus.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Fleiss JL. Mesure de l'accord sur une échelle nominale entre de nombreux évaluateurs. Psychol Bull. 1971;76:378-382.
Résultat attendu : 2 colonnes : Mesures de la méthode 1 | Mesures de la méthode 2
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : Mesures de la méthode 1 | Mesures de la méthode 2
m1 <- c({m1}) m2 <- c({m2}) d <- m1 - m2 c(bias = mean(d), lower = mean(d)-1.96*sd(d), upper = mean(d)+1.96*sd(d)) cor.test(m1, m2) coef(lm(m2 ~ m1)) # droite des moindres carrés ordinairesMode d'emploi
Quand l'utiliser ? Comparer deux méthodes de mesure en utilisant le biais, les limites d'accord à 95 %, la corrélation et la droite des moindres carrés ordinaires.
Hypothèses. Mesures appariées de la même grandeur par les deux méthodes.
Erreurs fréquentes. Ne pas juger de la concordance uniquement par corrélation : indiquer les limites de la concordance.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Bland JM, Altman DG. Méthodes statistiques pour évaluer la concordance entre deux méthodes. Lancet. 1986;1:307-310.
Résultat attendu : 2 colonnes : valeurs X | valeurs Y
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : valeurs X | valeurs Y
x <- c({x}) y <- c({y}) résumé(lm(y ~ x))Mode d'emploi
Quand l'utiliser ? Modéliser et prédire une variable de résultat continue à partir d'un seul prédicteur continu.
Hypothèses. Linéarité, indépendance, variance constante (homoscédasticité), résidus normaux.
Erreurs fréquentes. Ne pas extrapoler les prédictions au-delà de la plage observée de x.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Galton F. Régression vers la médiocrité dans la stature héréditaire. J Anthropol Inst. 1886;15:246-263.
Résultat attendu : une ligne par enregistrement, y, x1, x2, …
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : une ligne par enregistrement, y, x1, x2, …
df <- read.csv(text = "y,x1,x2 {mlr_csv}") summary(lm(y ~ ., data = df))Mode d'emploi
Quand l'utiliser ? Modélisez une variable continue à partir de plusieurs prédicteurs simultanément ; interprétez chaque coefficient comme l'effet ajusté.
Hypothèses : linéarité, erreurs indépendantes, variance constante, résidus normaux, absence de multicolinéarité importante.
Erreurs fréquentes. Évitez d'inclure plus de prédicteurs que l'échantillon ne peut en supporter ; vérifiez les facteurs d'inflation de la variance.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Draper NR, Smith H. Analyse de régression appliquée. 3e éd. 1998.
Résultat attendu : une ligne par enregistrement, y(0/1), x1, x2, …
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : une ligne par enregistrement, y(0/1), x1, x2, …
df <- read.csv(text = "y,x1 {logit_csv}") m <- glm(y ~ ., data = df, family = binomial) summary(m); exp(cbind(OR = coef(m), confint(m)))Mode d'emploi
Quand l'utiliser ? Modélisez un résultat binaire et obtenez les rapports de cotes ajustés pour chaque prédicteur.
Hypothèses. La variable de résultat est binaire ; les logarithmes des cotes sont linéaires par rapport aux prédicteurs ; les observations sont indépendantes.
Erreurs fréquentes. Règle générale : au moins ~10 événements par prédicteur pour éviter des estimations instables.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Hosmer DW, Lemeshow S, Sturdivant RX. Régression logistique appliquée. 3e éd. 2013.
Résultat attendu : une ligne par enregistrement, nombre, x1, x2, …
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : une ligne par enregistrement, nombre, x1, x2, …
df <- read.csv(text = "count,x1 {pois_csv}") m <- glm(count ~ ., data = df, family = poisson) summary(m); exp(coef(m))Mode d'emploi
Quand l'utiliser ? Modélisez le nombre de résultats et obtenez les rapports de taux pour chaque prédicteur.
Hypothèses. Les effectifs suivent une distribution de Poisson ; la moyenne est égale à la variance (vérifier la surdispersion).
Erreurs fréquentes. Si la variance dépasse largement la moyenne, utilisez une loi binomiale négative ou un modèle quasi-Poisson.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Cameron AC, Trivedi PK. Analyse de régression des données de comptage. 2e éd. 2013.
Résultat attendu : 2 colonnes : Valeurs du groupe 1 | Valeurs du groupe 2
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : Valeurs du groupe 1 | Valeurs du groupe 2
g1 <- c({g1}) g2 <- c({g2}) wilcox.test(g1, g2)Mode d'emploi
Quand l'utiliser ? Comparaison non paramétrique de deux groupes indépendants lorsque la normalité est douteuse.
Hypothèses. Observations indépendantes ; données ordinales ou continues.
Erreurs fréquentes. Il s'agit de comparer des distributions de rangs, et non des moyennes : décrivez les résultats comme un changement de distribution.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Mann HB, Whitney DR. Sur un test permettant de déterminer si l'une de deux variables aléatoires est stochastiquement plus grande. Ann Math Stat. 1947;18:50-60.
Résultat attendu : 2 colonnes : Valeurs avant | Valeurs après
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : Valeurs avant | Valeurs après
pré <- c({pré}) post <- c({post}) wilcox.test(pré, post, paired = TRUE)Mode d'emploi
Quand l'utiliser ? Test non paramétrique pour données appariées lorsque les différences ne suivent pas une distribution normale.
Hypothèses. Les différences sont symétriques autour de la médiane ; plan d’expérience apparié.
Erreurs fréquentes. Les différences nulles sont éliminées ; les égalités réduisent la puissance.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Wilcoxon F. Comparaisons individuelles par méthodes de classement. Biometrics Bull. 1945;1:80-83.
Résultat attendu : une ligne par enregistrement, Étiquette : v1, v2…
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : une ligne par enregistrement, Étiquette : v1, v2…
df <- stack(list({anova_groups})) kruskal.test(values ~ ind, data = df)Mode d'emploi
Quand l'utiliser ? Comparaison non paramétrique entre trois groupes ou plus.
Hypothèses. Groupes indépendants ; données ordinales ou continues ; distributions de forme similaire.
Erreurs fréquentes. Une valeur H significative indique que les groupes diffèrent, mais pas lesquels : effectuez ensuite le test de Dunn.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Kruskal WH, Wallis WA. Utilisation des rangs dans l'analyse de variance à un critère. J Am Stat Assoc. 1952;47:583-621.
tbl <- matrix(c({a},{b},{c},{d}), nrow = 2, byrow = TRUE) fisher.test(tbl)Mode d'emploi
Quand l'utiliser ? Test exact d'association dans un tableau 2×2, idéal pour les petits échantillons.
Hypothèses. Totaux marginaux fixes ; observations indépendantes.
Erreurs fréquentes. Pour les grands échantillons, le test du chi carré est plus simple à calculer et équivalent.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Fisher RA. La logique de l'inférence inductive. JR Stat Soc. 1935;98:39-82.
Résultat attendu : une ligne par enregistrement, heure, événement (1=événement, 0=censuré)[, groupe]
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : une ligne par enregistrement, heure, événement (1=événement, 0=censuré)[, groupe]
library(survival) df <- read.csv(text = "time,event,group {km_csv}") fit <- survfit(Surv(time, event) ~ group, data = df) summary(fit); survdiff(Surv(time, event) ~ group, data = df)Mode d'emploi
Quand l'utiliser ? Estimer la probabilité de survie au fil du temps à partir de données de temps jusqu'à l'événement censurées, et comparer les groupes à l'aide du test du log-rank.
Hypothèses. La censure est non informative ; les durées de survie sont mesurées à partir d’une origine commune.
Erreurs fréquentes. Ne considérez pas les sujets censurés comme exempts d'événements à la fin : la méthode en tient déjà compte.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Kaplan EL, Meier P. Estimation non paramétrique à partir d'observations incomplètes. J Am Stat Assoc. 1958;53:457-481.
Résultat attendu : une ligne par enregistrement, heure, événement (1/0), x1, x2, …
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : une ligne par enregistrement, heure, événement (1/0), x1, x2, …
library(survival) df <- read.csv(text = "time,event,x1 {cox_csv}") summary(coxph(Surv(time, event) ~ ., data = df))Mode d'emploi
Quand l'utiliser ? Estimer les rapports de risque des covariables sur les résultats de type « délai avant l'événement » sans spécifier le risque de base.
Hypothèses. Risques proportionnels (effets des covariables constants dans le temps) ; censure non informative.
Erreurs fréquentes. Vérifiez l'hypothèse des risques proportionnels (par exemple, les résidus de Schoenfeld) avant de vous fier aux HR.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Cox DR. Modèles de régression et tables de mortalité. JR Stat Soc B. 1972;34:187-220.
Format attendu : Études : Intitulé, Effet, IC inférieur, IC supérieur (une par ligne)
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Études : Intitulé, Effet, IC inférieur, IC supérieur (une par ligne)
library(meta) studlab <- c({meta_studlab}) TE <- c({meta_te}) lower <- c({meta_lower}) upper <- c({meta_upper}) seTE <- (upper - lower) / (2 * 1.96) # Erreur standard de l'intervalle de confiance à 95 %, comme le fait la calculatrice m <- metagen(TE, seTE, studlab = studlab, sm = "SMD", common = {meta_common}, random = {meta_random}, method.tau = "DL") summary(m) # effet combiné, Q de Cochran, I², tau²Mode d'emploi
Quand l'utiliser ? Regrouper les tailles d'effet de différentes études et quantifier l'hétérogénéité (I²).
Hypothèses. Les études sont suffisamment comparables sur les plans clinique et méthodologique pour être combinées.
Erreurs fréquentes. Un I² élevé (>75 %) indique une hétérogénéité importante : interpréter l’estimation groupée avec prudence.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- DerSimonian R, Laird N. Méta-analyse dans les essais cliniques. Control Clin Trials. 1986;7:177-188.
Résultat attendu : une ligne par enregistrement, étiquette, effet, erreur standard
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : une ligne par enregistrement, étiquette, effet, erreur standard
library(meta) studlab <- c({funnel_studlab}) TE <- c({funnel_te}) seTE <- c({funnel_se}) m <- metagen(TE, seTE, studlab = studlab, common = TRUE, random = FALSE) summary(m) # Estimation groupée à effets fixes et intervalle de confiance à 95 %, comme indiqué par la calculatrice funnel(m) metabias(m, method.bias = "linreg", k.min = 3) # Test de régression d'Egger : intercept, t, pMode d'emploi
Quand l'utiliser ? Détecter l'asymétrie du graphique en entonnoir (un indicateur de biais de publication potentiel) via le test de régression d'Egger.
Hypothèses. Au moins ~10 études sont nécessaires pour un test d'Egger suffisamment puissant ; tailles d'effet et erreurs standard par étude.
Erreurs fréquentes. L'asymétrie peut aussi refléter une hétérogénéité réelle ou des effets liés à la taille des études, et pas seulement un biais.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Egger M, Davey Smith G, Schneider M, Minder C. Biais dans la méta-analyse détecté par un test graphique simple. BMJ. 1997;315:629-634.
library(PRISMA2020) # fournir les décomptes à PRISMA_flowdiagram()
Mode d'emploi
Quand l'utiliser. Établissez le nombre d'enregistrements pour un diagramme de flux de sélection d'études PRISMA 2020 et vérifiez les équilibres arithmétiques.
Hypothèses. Les chiffres proviennent de votre journal de sélection à chaque étape.
Erreurs fréquentes. Les chiffres doivent concorder : le nombre de textes examinés moins le nombre de textes exclus doit être égal au nombre de textes intégraux évalués.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Page MJ, et al. La déclaration PRISMA 2020. BMJ. 2021;372:n71.
# GRADE est une évaluation structurée, pas un calcul. # Initialement : Essais contrôlés randomisés (ECR) = Niveau élevé (4), Études observationnelles = Niveau faible (2). # Abaisser le niveau (-1/-2) en cas de risque de biais, d’incohérence, # de caractère indirect, d’imprécision ou de biais de publication. # Rehausser le niveau (+1/+2) en cas d’effet important ou de relation dose-réponse.
Mode d'emploi
Quand l'utiliser. Évaluer le degré de certitude d'un ensemble de preuves (Élevé / Modéré / Faible / Très faible) à l'aide du cadre GRADE.
Hypothèses. Vous avez évalué chaque domaine GRADE en fonction du résultat souhaité.
Erreurs fréquentes. Évaluer le niveau de certitude par résultat, et non par étude ; les améliorations ne concernent généralement que les données observationnelles.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Guyatt GH, et al. GRADE : un consensus émergent sur l’évaluation de la qualité des preuves. BMJ. 2008 ;336 :924-926.
Format attendu : Matrice d’accord : lignes sur des nouvelles lignes, séparées par des virgules
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Matrice d’accord : lignes sur des nouvelles lignes, séparées par des virgules
library(irr) tbl <- matrix(c({mat_flat}), nrow = {nrows}, byrow = TRUE) r1 <- rep(row(tbl), tbl); r2 <- rep(col(tbl), tbl) # une paire de notes par élément kappa2(cbind(r1, r2))Mode d'emploi
Quand l'utiliser ? Pour mesurer la concordance inter-évaluateurs catégorielle au-delà de ce qui est attendu par hasard.
Hypothèses. Deux évaluateurs ; mêmes catégories ; évaluations indépendantes.
Erreurs fréquentes. Le coefficient kappa est sensible à la prévalence : un fort consensus peut donner un faible coefficient kappa.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Cohen J. Un coefficient d'accord pour les échelles nominales. Educ Psychol Meas. 1960;20:37-46.
Format attendu : Évaluateurs (un par ligne) : Nom de l’évaluateur : v1, v2 …
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Évaluateurs (un par ligne) : Nom de l’évaluateur : v1, v2 …
library(irr) ratings <- {icc_ratings} # lignes = sujets, colonnes = évaluateurs icc(ratings, modèle = "oneway", unité = "single")Mode d'emploi
Quand l'utiliser ? Quantifier la fiabilité des mesures continues effectuées par plusieurs évaluateurs.
Hypothèses. Évaluations continues ; même équipe d’évaluateurs pour tous les sujets.
Erreurs fréquentes. Précisez le format ICC (1,1 / 2,1 / 3,1) : ils ne sont pas interchangeables.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Shrout PE, Fleiss JL. Corrélations intraclasses. Psychol Bull. 1979;86:420-428.
Format attendu : Répondants × éléments : un par ligne, éléments séparés par des virgules
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Répondants × éléments : un par ligne, éléments séparés par des virgules
bibliothèque(psych) # lignes = répondants, colonnes = éléments alpha(matrice_données)
Mode d'emploi
Quand l'utiliser ? Évaluer la cohérence interne (fiabilité) d'une échelle à plusieurs items.
Hypothèses. Les items mesurent un seul construit sous-jacent ; notation par intervalles.
Erreurs fréquentes. L'alpha augmente avec le nombre d'éléments : ne surinterprétez pas les valeurs élevées sur les longues échelles.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Cronbach LJ. Coefficient alpha et structure interne des tests. Psychometrika. 1951;16:297-334.
te <- {te}; biais <- {biais} ; cv <- {cv} sigma <- (te - abs(bias))/cv sigmaMode d'emploi
Quand l'utiliser ? Calculez la métrique sigma pour un dosage en laboratoire et sélectionnez les règles de contrôle qualité appropriées.
Hypothèses. TEa, le biais et le CV sont exprimés dans les mêmes unités de pourcentage.
Erreurs fréquentes. Un Sigma inférieur à 3 nécessite un contrôle qualité multi-règles intensif ; ne pas utiliser de règles uniques.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Westgard JO. Pratiques de base en matière de contrôle qualité. 4e éd. 2016.
Résultat attendu : 2 colonnes : Valeurs de la méthode 1 | Valeurs de la méthode 2
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : Valeurs de la méthode 1 | Valeurs de la méthode 2
m1 <- c({m1}) m2 <- c({m2}) d <- m1 - m2 c(biais = moyenne(d), inférieur = moyenne(d)-1.96*sd(d), supérieur = moyenne(d)+1.96*sd(d))Mode d'emploi
Quand l'utiliser ? Évaluer la concordance entre deux méthodes de mesure via le biais de la moyenne et des limites de concordance.
Hypothèses. Les différences sont approximativement normales et constantes sur toute la plage de mesure.
Erreurs fréquentes. N’utilisez jamais le coefficient de corrélation pour évaluer la concordance des méthodes.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Bland JM, Altman DG. Méthodes statistiques d'évaluation de la concordance. Lancet. 1986;1:307-310.
Résultat attendu : 2 colonnes : Valeurs de la méthode 1 | Valeurs de la méthode 2
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : Valeurs de la méthode 1 | Valeurs de la méthode 2
bibliothèque(mcr) m1 <- c({m1}) m2 <- c({m2}) mcreg(m1, m2, méthode.reg = "PaBa")Mode d'emploi
Quand l'utiliser ? Comparaison de méthodes non paramétriques robustes aux valeurs aberrantes et aux erreurs de mesure dans les deux méthodes.
Hypothèses. Mesures appariées continues ; aucune hypothèse sur la distribution des erreurs.
Erreurs fréquentes. Nécessite une plage de mesure raisonnable pour estimer la pente de manière fiable.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Passing H, Bablok W. Une nouvelle procédure biométrique pour tester l'égalité des mesures. J Clin Chem Clin Biochem. 1983;21:709-720.
events <- {events}; pt <- {pt} poisson.test(events, pt) # IC exact par unité de temps-personne poisson.test(events, pt)$conf.int * {mult_n} # IC à 95 % par {mult_n}Mode d'emploi
Quand l'utiliser. Calculer le taux de nouveaux événements par unité de temps-personne à risque.
Hypothèses. Le temps de travail des personnes est correctement cumulé ; les événements sont indépendants.
Erreurs fréquentes. Ne confondez pas l'incidence (nouveaux cas au fil du temps) avec la prévalence (cas existants).
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Rothman KJ, Greenland S, Lash TL. Épidémiologie moderne. 3e éd. 2008.
cas <- {cas}; pop <- {pop} prop.test(cas, pop)Mode d'emploi
Quand l'utiliser. Estimer la proportion d'une population atteinte d'une affection à un moment donné ou pendant une période donnée.
Hypothèses. Les cas et la population sont mesurés sur la même période.
Erreurs fréquentes. La prévalence reflète à la fois l'incidence et la durée, et non le taux de nouveaux cas.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Rothman KJ, Greenland S, Lash TL. Épidémiologie moderne. 3e éd. 2008.
a <- {a}; b <- {b}; c <- {c}; d <- {d} Re <- a/(a+b); Ru <- c/(c+d) c(AR = Re-Ru, ARP = (Re-Ru)/Re, RR = Re/Ru)Mode d'emploi
Quand l'utiliser. Quantifier le risque excédentaire attribuable à une exposition (risque attribuable, fraction attribuable, AR populationnel).
Hypothèses. Une interprétation causale exige que l'association exposition-résultat ne soit pas biaisée.
Erreurs fréquentes. Les fractions attribuables supposent une relation de cause à effet : elles ne s’appliquent pas aux données purement associatives.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Rothman KJ, Greenland S, Lash TL. Épidémiologie moderne. 3e éd. 2008.
un <- {un} ; na <- {na} ; ce <- {ce} ; nc <- {nc} fp <- function(x1, x0) fisher.test(matrix(c(x1, na - x1, x0, nc - x0), 2, byrow = TRUE))$p.value p0 <- fp(ea, ec); x1 <- un ; x0 <- ce; fi <- 0 si (p0 < 0.05) while (fp(x1, x0) < 0.05) { if (ea <= ec) x1 <- x1 + 1 else x0 <- x0 + 1; fi <- fi + 1 } c(fisher_p = p0, fragilité_index = si (p0 < 0.05) fi sinon NA)Mode d'emploi
Quand l'utiliser ? Évaluer la robustesse d'un résultat statistiquement significatif d'un essai contrôlé randomisé.
Hypothèses. Résultat binaire 2×2 issu d'un essai randomisé.
Erreurs fréquentes. Un faible indice de fragilité n'invalide pas à lui seul un procès.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Walsh M, et al. La signification statistique des résultats des essais contrôlés randomisés est souvent fragile. J Clin Epidemiol. 2014;67:622-628.
Format attendu : Valeurs
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Valeurs
x <- c({data}) shapiro.test(x)Mode d'emploi
Quand l'utiliser ? Avant de choisir un test paramétrique, évaluez si les données proviennent vraisemblablement d'une distribution normale.
Hypothèses. Données continues ; n compris entre 3 et 5000 pour le test de Shapiro-Wilk.
Erreurs fréquentes. Une valeur p > 0.05 ne prouve pas la normalité : il faut toujours examiner également l’histogramme et le graphique QQ.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Shapiro SS, Wilk MB. Un test d'analyse de variance pour la normalité. Biometrika. 1965;52:591-611.
Format attendu : Valeurs
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Valeurs
x <- c({données}) résumé(x); écart-type(x)Mode d'emploi
Quand l'utiliser. Résumer une variable continue pour un Tableau 1 (moyenne, écart-type, médiane, IQR, étendue).
Hypothèses. Aucune : purement descriptive.
Erreurs fréquentes. Indiquez la moyenne ± l'écart type uniquement pour les données approximativement symétriques ; utilisez la médiane (IQR) pour les données asymétriques.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Association américaine de psychologie. Manuel de publication. 7e éd. 2020.
x <- {val} ; mu <- {mu} ; sigma <- {sig} z <- (x - mu)/sigma c(z = z, centile = pnorm(z))Mode d'emploi
Quand l'utiliser ? Standardiser une valeur et trouver son percentile dans une distribution normale.
Hypothèses. La moyenne et l'écart-type de la population sont connus ; la distribution est normale.
Erreurs fréquentes. Utilisez plutôt un score t pour estimer les paramètres à partir d'un petit échantillon.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Moore DS, McCabe GP, Craig BA. Introduction à la pratique des statistiques. 9e éd. New York : WH Freeman ; 2017.
Format attendu : Valeurs
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Valeurs
x <- c({données}) hist(x); résumé(x)Mode d'emploi
Quand l'utiliser. Visualisez la forme, le centre et la dispersion d'une variable continue.
Hypothèses. Données continues ; taille d’échantillon adéquate pour des intervalles significatifs.
Erreurs fréquentes. La largeur des cases influe fortement sur l'apparence : faites plusieurs essais avant de conclure.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Sturges HA. Le choix d'un intervalle de classe. J Am Stat Assoc. 1926;21:65-66.
Résultat attendu : 2 colonnes : Valeurs de la méthode A | Valeurs de la méthode B
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : Valeurs de la méthode A | Valeurs de la méthode B
x <- c({x}) y <- c({y}) n <- longueur(x) sx <- moyenne((x-moyenne(x))^2); sy <- moyenne((y-moyenne(y))^2); sxy <- moyenne((x-moyenne(x))*(y-moyenne(y))) ccc <- 2*sxy/(sx+sy+(moyenne(x)-moyenne(y))^2) ccc cor(x, y) # précision; Cb = ccc / r (exactitude)Mode d'emploi
Quand l'utiliser ? Quantifier la concordance (et non la simple corrélation) entre deux méthodes mesurant la même grandeur continue.
Hypothèses. Mesures appariées sur les mêmes sujets ; distribution approximativement normale bivariée pour l’intervalle de confiance de Fisher-z ; étendue des valeurs suffisamment large.
Erreurs fréquentes. Ne pas se fier uniquement au coefficient de corrélation de Pearson (r) pour conclure à un accord. Avec des échantillons très petits, l'intervalle de confiance est peu fiable ; il est conseillé d'ajouter un diagramme de Bland-Altman.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Lin LI. Un coefficient de corrélation de concordance pour évaluer la reproductibilité. Biometrics. 1989;45(1):255-268.
- McBride GB. Proposition de critères de force d'accord pour le coefficient de corrélation de concordance de Lin. Rapport client NIWA HAM2005-062. 2005.
Résultat attendu : 2 colonnes : Référence / méthode X | Méthode de test Y
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 2 colonnes : Référence / méthode X | Méthode de test Y
x <- c({x}) y <- c({y}) lambda <- {delta} sxx <- var(x); syy <- var(y); sxy <- cov(x, y) b <- (syy - lambda*sxx + sqrt((syy - lambda*sxx)^2 + 4*lambda*sxy^2)) / (2*sxy) a <- Mean(y) - b*mean(x) c(intercept = a, pente = b)Mode d'emploi
Quand l'utiliser ? Pour comparer deux méthodes de mesure lorsque les deux présentent une erreur de mesure (contrairement à la méthode des moindres carrés ordinaires, qui suppose que X est exact).
Hypothèses. Le rapport des variances d'erreur des deux méthodes (λ) est connu ou peut être estimé à partir de réplicats ; les erreurs sont à peu près constantes sur toute la plage.
Erreurs fréquentes. Si l'erreur est proportionnelle à la concentration, utilisez la méthode de Deming pondérée ou celle de Passing-Bablok. N'utilisez pas les moindres carrés ordinaires (MCO) si les deux méthodes sont bruitées.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Deming WE. Ajustement statistique des données. Wiley ; 1943.
- Linnet K. Évaluation des procédures de régression pour les études de comparaison de méthodes. Clin Chem. 1993;39(3):424-432.
Résultat attendu : une ligne par enregistrement, nom, valeur, type
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : une ligne par enregistrement, nom, valeur, type
u <- c(0.12, 0.20, 0.05/sqrt(3), 0.10/sqrt(6)) # incertitudes types uc <- sqrt(sum(u^2)) k <- {k} c(combiné = uc, étendu = k*uc)Mode d'emploi
Quand l'utiliser. Établir un budget d'incertitude GUM : convertir chaque composante en une incertitude standard et les combiner par la racine carrée de la somme des carrés.
Hypothèses. Les composantes sont indépendantes (absence de termes de covariance) et la variable mesurée est une somme des contributions avec des coefficients de sensibilité de 1.
Erreurs fréquentes. Ne mélangez pas les incertitudes élargies et les incertitudes-types. Incluez manuellement les termes corrélés ou non sensibles à l'unité avant de les saisir.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- JCGM 100:2008. Évaluation des données de mesure — Guide pour l’expression de l’incertitude de mesure (GUM).
- Guide Eurachem/CITAC CG 4. Quantification de l'incertitude dans les mesures analytiques. 3e éd. 2012.
Résultats attendus : 4 colonnes : Réplicats à blanc | Réplicats d’échantillons à faible concentration | Concentrations d’étalonnage | Réponses de l’instrument
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultats attendus : 4 colonnes : Réplicats à blanc | Réplicats d’échantillons à faible concentration | Concentrations d’étalonnage | Réponses de l’instrument
blank <- c({blank}) low <- c({low}) LoB <- mean(blank) + 1.645 * sd(blank) cp <- 1.645 / (1 - 1 / (4 * (length(low) - 1))) LoD <- LoB + cp * sd(low) c(LoB = LoB, LoD = LoD) # Alternative pour la courbe d'étalonnage ICH Q2 : conc <- c({x}); resp <- c({y}) fit <- lm(resp ~ conc) c(LoD = 3.3 * summary(fit)$sigma / coef(fit)[2], LoQ = 10 * summary(fit)$sigma / coef(fit)[2])Mode d'emploi
Quand utiliser. Estimez la limite de blanc et la limite de détection à partir de blancs et de réplicats de faible niveau avec les formules paramétriques (CLSI EP17-A2 définit la conception de l'étude), ou LoD/LoQ à partir d'une courbe d'étalonnage (ICH Q2(R1)).
Hypothèses. EP17 : les résultats suivent approximativement une distribution gaussienne, à partir d’au moins 60 mesures à blanc et 60 mesures à faible niveau (20 de chaque pour vérification), réparties sur plusieurs jours et lots de réactifs. ICH : réponse linéaire au voisinage de la limite.
Erreurs fréquentes. Le calculateur accepte 10 réplicats ou plus ; la directive EP17 utilise environ 60 résultats à blanc et 60 résultats à faible concentration pour établir une limite et au moins 20 pour vérifier une limite déclarée. Cette méthode paramétrique suppose un seul échantillon à faible concentration ; avec plusieurs échantillons ou des blancs non gaussiens, utilisez la procédure non paramétrique. Confirmez les limites expérimentalement.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- CLSI. Évaluation de la capacité de détection des procédures de mesure en laboratoire clinique ; EP17-A2. 2012.
- ICH Q2(R1). Validation des procédures analytiques : texte et méthodologie. 2005.
- Armbruster DA, Pry T. Limite du blanc, limite de détection et limite de quantification. Clin Biochem Rev. 2008;29(Suppl 1):S49-S52.
Format attendu : Valeurs de la population de référence
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Format attendu : Valeurs de la population de référence
x <- c({data}) quantile(x, c(0.025, 0.975), type = 6) # non paramétrique (CLSI C28-A3) mean(x) + c(-1, 1) * qnorm(0.975) * sd(x) # paramétriqueMode d'emploi
Quand l'utiliser. Établir un intervalle de référence (95 % centraux d'une population de référence saine) pour un analyte de laboratoire.
Hypothèses. Les valeurs proviennent d'au moins 120 individus de référence bien définis (CLSI C28-A3) ; les valeurs aberrantes ont été examinées, et non supprimées aveuglément.
Erreurs fréquentes. Avec moins de 120 valeurs, considérez les limites comme approximatives. Partitionnez par âge ou par sexe lorsque les distributions diffèrent nettement.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- CLSI. Définition, établissement et vérification des intervalles de référence dans le laboratoire clinique ; Ligne directrice approuvée C28-A3. 2008.
- Horn PS, Pesce AJ. Intervalles de référence : une mise à jour. Clin Chim Acta. 2003;334:5-23.
Résultats attendus : 2 colonnes : Concentrations attendues | Résultats mesurés
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultats attendus : 2 colonnes : Concentrations attendues | Résultats mesurés
x <- c({x}) y <- c({y}) summary(lm(y ~ x + I(x^2)))$coefficients # ligne 3 = test de non-linéarité summary(lm(y ~ x))$r.squaredMode d'emploi
Quand l'utiliser. Vérifiez qu'un test répond linéairement sur toute sa plage de mesure en recherchant une composante quadratique (l'approche polynomiale de l'ancienne norme CLSI EP6-A).
Hypothèses. Au moins cinq niveaux d'information équivalents ; moyenne des réplicats par niveau ; variance constante sur toute la plage de valeurs.
Erreurs fréquentes. Un R² élevé ne prouve pas à lui seul la linéarité. L'absence de signification statistique ne prouve pas la linéarité avec un nombre très réduit de niveaux : examinez les résidus.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- CLSI. Évaluation de la linéarité des procédures de mesure quantitative ; EP06. 2e éd. 2020.
Résultats attendus : 3 colonnes : Variable X | Variable Y | Variable de contrôle Z
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultats attendus : 3 colonnes : Variable X | Variable Y | Variable de contrôle Z
x <- c({x}) y <- c({y}) z <- c({z}) rx <- resid(lm(x ~ z)); ry <- resid(lm(y ~ z)) r <- cor(rx, ry) t <- r * sqrt((length(x) - 3) / (1 - r^2)) c(partial_r = r, t = t, p = 2 * pt(-abs(t), length(x) - 3))Mode d'emploi
Quand l'utiliser. Estimer l'association entre X et Y après avoir supprimé l'effet linéaire d'une troisième variable Z (un facteur de confusion).
Hypothèses : relations linéaires ; variables approximativement normales ; Z est mesuré sans erreur.
Erreurs fréquentes. La corrélation partielle ne prouve pas que Z est un facteur de confusion ni que X cause Y. En présence de plusieurs covariables, utilisez une régression multiple.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Kim S. ppcor : un package R pour un calcul rapide des coefficients de corrélation semi-partielle. Commun Stat Appl Methods. 2015 ;22(6) :665-674.
e1 <- {e1}; n1 <- {n1}; e0 <- {e0}; n0 <- {n0}; margin <- {margin}/100; p1 <- e1/n1; p0 <- e0/n0; se <- sqrt(p1*(1-p1)/n1 + p0*(1-p0)/n0); z <- (p1 - p0 + margin)/se; # non-infériorité (plus la valeur est élevée, mieux c'est); c(diff = p1 - p0, z = z, p_one_sided = 1 - pnorm(z)); # Équivalence (TOST) : z2 <- (margin - (p1 - p0))/se; max(1 - pnorm(z), 1 - pnorm(z2)); # Valeur p du test TOSTMode d'emploi
Quand l'utiliser. Démontrer qu'un nouveau traitement n'est pas inférieur au traitement témoin de plus d'une marge prédéfinie (non-infériorité), ou que deux traitements diffèrent de moins de cette marge dans les deux sens (équivalence, TOST), pour un résultat binaire.
Hypothèses. La marge a été fixée dans le protocole avant l'obtention des données et est justifiée cliniquement ; échantillons suffisamment grands pour l'approximation de Wald.
Erreurs fréquentes. Ne choisissez pas la marge après avoir examiné les données. En cas de petits effectifs ou de taux proches de 0 ou 100 %, utilisez une méthode de score (Farrington-Manning). L'absence de signification statistique dans un test de supériorité ne constitue pas une preuve d'équivalence.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Blackwelder WC. Démontrer l'hypothèse nulle dans les essais cliniques. Control Clin Trials. 1982;3:345-353.
- Schuirmann DJ. Comparaison de la procédure des deux tests unilatéraux et de l'approche par la puissance pour évaluer l'équivalence de la biodisponibilité moyenne. J Pharmacokinet Biopharm. 1987;15:657-680.
- Piaggio G, et al. Rapport des essais randomisés de non-infériorité et d'équivalence (extension CONSORT). JAMA. 2012;308(24):2594-2604.
Résultat attendu : 4 colonnes : Séquence AB, Période 1 | Séquence AB, Période 2 | Séquence BA, Période 1 | Séquence BA, Période 2
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultat attendu : 4 colonnes : Séquence AB, Période 1 | Séquence AB, Période 2 | Séquence BA, Période 1 | Séquence BA, Période 2
ab1 <- c({ab1}); ab2 <- c({ab2}) # séquence AB : période 1 (A), période 2 (B) ba1 <- c({ba1}); ba2 <- c({ba2}) # séquence BA : période 1 (B), période 2 (A) dA <- ab1 - ab2; dB <- ba1 - ba2 t.test(dA, dB, var.equal = TRUE) # effet du traitement A - B = (moyenne(dA) - moyenne(dB)) / 2 t.test(dA, -dB, var.equal = TRUE) # effet de période t.test(ab1 + ab2, ba1 + ba2, var.equal = TRUE) # report (différence des totaux par sujet)Mode d'emploi
Quand l'utiliser. Analyser un essai croisé à deux périodes et deux traitements (AB/BA) avec un résultat continu : estimer l'effet du traitement et tester les effets de période et de report (Hills-Armitage / Grizzle).
Hypothèses. Participants randomisés dans les deux séquences ; période de sevrage adéquate ; différences intra-sujets approximativement normales ; absence d’interaction traitement-période.
Erreurs fréquentes. Le test de report a une faible puissance et ne doit pas servir de critère d'exclusion pour l'analyse (Senn) ; prévoir l'effet de lavage dès la conception. Ne pas utiliser pour les affections qui se résorbent ou les traitements ayant des effets permanents.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Senn S. Essais croisés en recherche clinique. 2e éd. Wiley ; 2002.
- Hills M, Armitage P. L'essai clinique croisé à deux périodes. Br J Clin Pharmacol. 1979;8:7-20.
- Grizzle JE. Le plan d'étude à deux périodes et son utilisation dans les essais cliniques. Biometrics. 1965;21:467-480.
power.t.test(delta = {delta}, sd = sqrt(2) * {sigma}, sig.level = {alpha}, power = {power}, type = "paired")$n # N totalMode d'emploi
Quand l'utiliser. Planifiez un essai croisé à deux périodes et deux séquences (AB/BA) comparant deux traitements sur un résultat continu.
Hypothèses. Absence d'effet résiduel ou d'interaction période-traitement ; effectifs égaux dans les deux séquences ; écart-type intra-sujet issu d'une étude croisée précédente.
Erreurs fréquentes. Ne pas utiliser pour les essais en groupes parallèles ni en cas de risque de report (traitements de longue durée, absence de période de sevrage). La bioéquivalence nécessite un calcul basé sur le TOST.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Senn S. Essais croisés en recherche clinique. 2e éd. Wiley ; 2002.
- Chow SC, Shao J, Wang H. Calculs de la taille de l'échantillon dans la recherche clinique. 2e éd. 2008.
# Frontières séquentielles de groupe classiques (de forme fixe), équidistantes K <- {looks}; alpha <- {alpha}; type <- "{interim_type}" # "OF" = O'Brien-Fleming, "Pocock" w <- if (type == "Pocock") rep(1, K) else sqrt(K / seq_len(K)) surv <- function(C, NG = 240) { simp <- c(1, rep(c(4, 2), length.out = NG - 1), 1) for (k in seq_len(K)) { b <- C * w[k] * sqrt(k); hn <- 2 * b / NG; ng <- -b + (0:NG) * hn nd <- if (k == 1) dnorm(ng) else sapply(ng, function(s) sum(simp * dens * dnorm(s - grid)) * h / 3) s <- sum(simp * nd) * hn / 3; grid <- ng; dens <- nd; h <- hn } s } C <- uniroot(function(C) 1 - surv(C) - alpha, c(1, 6), tol = 1e-10)$root round(C * w, 3) # critique |z| à chaque regardMode d'emploi
Quand l'utiliser. Définir des limites d'arrêt d'efficacité pour un essai avec des analyses intermédiaires prévues afin que l'erreur de type I globale reste à α.
Hypothèses. Regards équidistants (informations égales par étape) ; test bilatéral d’une statistique à distribution normale ; limites fixées avant la levée de l’aveugle.
Erreurs fréquentes. Évitez d'ajouter des effets visuels imprévus. Pour un espacement inégal, utilisez la méthode de répartition alpha (Lan-DeMets) dans un logiciel spécialisé.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- O'Brien PC, Fleming TR. Une procédure de tests multiples pour les essais cliniques. Biometrics. 1979;35(3):549-556.
- Pocock SJ. Méthodes séquentielles de groupe dans la conception et l'analyse des essais cliniques. Biometrika. 1977;64(2):191-199.
- Jennison C, Turnbull BW. Méthodes séquentielles de groupe avec applications aux essais cliniques. CRC; 2000.
set.seed({seed}) arms <- trimws(strsplit("{arms}", ",")[[1]]); blocks <- c({blocks}); n <- {n} strata <- trimws(strsplit("{strata}", ",")[[1]]); schéma <- "{schéma}" gen <- fonction(n) { si (grepl("Simple", schéma)) retourner(bras[échantillon.int(longueur(bras), n, remplacer = TRUE)]) sortie <- caractère(0) tant que (longueur(sortie) < n) { b <- blocs[échantillon.int(longueur(blocs), 1)] sortie <- c(sortie, échantillon(rep(bras, longueur.sortie = b))) } sortie[1:n] } si (grepl("Stratifié", schéma)) lapply(setNames(strates, strates), fonction(s) gen(n)) sinon gen(n)Mode d'emploi
Quand l'utiliser ? Générez une liste d'allocation reproductible (simple, par blocs permutés ou stratifiée) à partir d'une valeur initiale enregistrée. La commande R reproduit la liste exacte.
Hypothèses. La liste est détenue par une personne indépendante du processus de recrutement (dissimulation de l'affectation) ; la liste initiale et la liste sont archivées.
Erreurs fréquentes. N’utilisez pas une taille de bloc fixe dans les essais non menés en aveugle (les dernières affectations deviennent prévisibles). Une randomisation simple peut déséquilibrer les petits essais. Les méthodes dynamiques, comme la minimisation, nécessitent un logiciel dédié.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Schulz KF, Grimes DA. Génération de séquences d'allocation dans les essais randomisés. Lancet. 2002;359:515-519.
- Kim J, Shin W. Comment effectuer une allocation aléatoire (randomisation). Clin Orthop Surg. 2014;6(1):103-109.
e1 <- {e1} ; n1 <- {n1} ; e0 <- {e0} ; n0 <- {n0} point <- e1/n1 ; pc <- e0/n0 arr <- pc - pt se <- sqrt(pt*(1-pt)/n1 + pc*(1-pc)/n0) ci <- arr + c(-1, 1) * qnorm(0.975) * se c(ARR = arr, NNT = 1/arr) 1/rev(ci) # NNT IC à 95 % (valable lorsque l'ARR CI exclut 0)Mode d'emploi
Quand utiliser ce test ? Indiquez les effets du traitement sous forme de réduction absolue du risque, de risque relatif, de rapport de cotes et de nombre de sujets à traiter, chacun avec un intervalle de confiance à 95 %, ainsi qu’un graphique de Cates montrant ce qui arrive à 100 personnes traitées.
Hypothèses. Résultat binaire sur une durée de suivi fixe ; effectifs suffisamment importants pour les intervalles de Wald.
Erreurs fréquentes. Lorsque l'intervalle ARR inclut zéro, l'intervalle NNT tend vers l'infini (de NNTB à NNTH) : ne le présentez pas comme une simple plage. L'intervalle NNT est spécifique à la durée du suivi.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Altman DG. Intervalles de confiance pour le nombre de sujets à traiter. BMJ. 1998;317:1309-1312.
- Laupacis A, Sackett DL, Roberts RS. Évaluation des mesures cliniquement utiles des conséquences du traitement. N Engl J Med. 1988;318:1728-1733.
library(effectsize) d <- {value} # si conversion depuis d d_to_r(d) # tailles de groupe égales d_to_oddsratio(d) J <- 1 - 3/(4*({n1}+{n2}-2) - 1); d * J # Hedges gMode d'emploi
Quand l'utiliser. Convertir entre le d de Cohen, le g de Hedges, le coefficient de corrélation r et le rapport de cotes afin de pouvoir regrouper les études dans une méta-analyse.
Hypothèses. La variable de résultat continue sous-jacente suit approximativement une loi normale dans les deux groupes (la conversion logistique en OR repose sur cette hypothèse).
Erreurs fréquentes. Ne pas convertir lorsque les données d'origine sont véritablement binaires : utiliser directement le rapport de cotes rapporté. Les conversions entre d et r supposent un plan d'expérience à deux groupes.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Borenstein M, Hedges LV, Higgins JPT, Rothstein HR. Introduction à la méta-analyse. Wiley ; 2009. Chap. 7.
- Chinn S. Une méthode simple pour convertir un odds ratio en taille d'effet. Stat Med. 2000;19:3127-3131.
tab <- matrix(c({a}, {c}, {b}, {d}), nrow = 2) # lignes : avant +/-, colonnes : après +/- mcnemar.test(tab) binom.test({b}, {b} + {c}) # valeur p exacteMode d'emploi
Quand l'utiliser ? Comparer des résultats binaires appariés (les mêmes sujets avant/après, ou des paires cas-témoins appariées).
Hypothèses. Les paires sont indépendantes les unes des autres ; le résultat est dichotomique aux deux moments ; seules les paires discordantes contiennent de l’information.
Erreurs fréquentes. Ne pas utiliser pour des groupes indépendants (utiliser le test du χ² ou le test de Fisher). Avec moins de 25 paires discordantes environ, privilégier la valeur p exacte.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- McNemar Q. Note sur l'erreur d'échantillonnage de la différence entre proportions corrélées. Psychometrika. 1947;12(2):153-157.
- Fagerland MW, Lydersen S, Laake P. Le test McNemar pour les données binaires par paires appariées. Méthode BMC Med Res. 2013;13:91.
Résultats attendus : 3 colonnes : Statut réel (une par sujet) | Notes du correcteur 1 | Notes du correcteur 2
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultats attendus : 3 colonnes : Statut réel (une par sujet) | Notes du correcteur 1 | Notes du correcteur 2
statut <- c({statut}) s1 <- c({score1}) s2 <- c({score2}) if (grepl("^Lower", "{dir1}")) s1 <- -s1 # rendre "plus élevé = plus positif" if (grepl("^Lower", "{dir2}")) s2 <- -s2 alpha <- {alpha} # Composantes structurelles de DeLong (1988), R de base uniquement psi <- function(x, y) (x > y) + 0.5 * (x == y) comp <- function(s) { M <- outer(s[statut == 1], s[statut == 0], psi) # liste des positifs x négatifs(V10 = rowMeans(M), V01 = colMeans(M)) } c1 <- comp(s1); c2 <- comp(s2) m <- sum(statut == 1); n <- sum(status == 0) auc <- c(mean(c1$V10), mean(c2$V10)) S10 <- cov(cbind(c1$V10, c2$V10)) S01 <- cov(cbind(c1$V01, c2$V01)) S <- S10 / m + S01 / n # matrice de covariance de (AUC1, AUC2) d <- auc[1] - auc[2] se <- sqrt(S[1, 1] + S[2, 2] - 2 * S[1, 2]) z <- d / se p <- 2 * pnorm(-abs(z)) q <- qnorm(1 - alpha / 2) ci <- function(a, v) pmin(1, pmax(0, a + c(-1, 1) * q * sqrt(v))) ci1 <- ci(auc[1], S[1, 1]); ci2 <- ci(auc[2], S[2, 2]) cid <- d + c(-1, 1) * q * se rho <- S[1, 2] / sqrt(S[1, 1] * S[2, 2]) cat(sprintf("n positifs = %d, n négatifs = %d\n", m, n)) cat(sprintf("AUC1 = %.4f [%.4f, %.4f]\n", auc[1], ci1[1], ci1[2])) cat(sprintf("AUC2 = %.4f [%.4f, %.4f]\n", auc[2], ci2[1], ci2[2])) cat(sprintf("Différence = %.4f [%.4f, %.4f], z = %.4f, p = %.4f\n", d, cid[1], cid[2], z, p)) cat(sprintf("Corrélation des AUC = %.4f\n", rho)) # Vérification croisée facultative pour savoir si pROC est installé : # pROC::roc.test(pROC::roc(status, s1, direction = "<"), # pROC::roc(status, s2, direction = "<"), method = "delong")Mode d'emploi
Quand l'utiliser ? Tester si deux tests diagnostiques ou biomarqueurs, mesurés sur les mêmes sujets, diffèrent en termes de capacité de discrimination (aire sous la courbe ROC).
Hypothèses. Chaque sujet possède des scores et un statut binaire (0/1) ; les sujets sont indépendants les uns des autres ; les deux AUC sont corrélées car elles concernent les mêmes sujets (DeLong en tient compte). Les égalités sont traitées par la convention du rang médian (0.5).
Erreurs fréquentes. Ne pas utiliser pour des marqueurs mesurés chez des sujets différents (utiliser une comparaison non appariée). Avec très peu de valeurs positives ou négatives, l'approximation normale est peu fiable ; un résultat non significatif ne prouve pas une performance équivalente. Comparer les AUC partielles ou les seuils cliniquement pertinents lorsque la courbe complète n'est pas pertinente.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- DeLong ER, DeLong DM, Clarke-Pearson DL. Comparaison des aires sous deux ou plusieurs courbes ROC (Receiver Operating Characteristic) corrélées : une approche non paramétrique. Biometrics. 1988;44(3):837-845.
- Hanley JA, McNeil BJ. Une méthode de comparaison des aires sous les courbes caractéristiques de fonctionnement du récepteur dérivées des mêmes cas. Radiology. 1983;148(3):839-843.
- Robin X, Turck N, Hainard A, et al. pROC : un package open-source pour R et S+ permettant d’analyser et de comparer les courbes ROC. BMC Bioinformatics. 2011 ;12 :77.
Résultats attendus : 2 colonnes : État de la maladie par sujet | Valeur du marqueur par sujet
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultats attendus : 2 colonnes : État de la maladie par sujet | Valeur du marqueur par sujet
statut <- c({statut}) score <- c({score}) plus élevé <- "{dir}" == "Plus élevé = plus positif" méthode <- "{méthode}" cible <- {cible} / 100 cr <- {costratio} précédent <- supprimerAvertissements(as.numeric("{précédent}")) / 100 # vide -> NA -> prévalence de l'échantillon P <- somme(statut == 1); N <- sum(status == 0) si (is.na(prev)) prev <- P / (P + N) u <- sort(unique(score)) cut <- (head(u, -1) + tail(u, -1)) / 2 # candidats : points médians entre valeurs distinctes posf <- function(s, c) si (higher) s >= c sinon s <= c sens <- sapply(cut, function(c) mean(posf(score[status == 1], c))) spec <- sapply(cut, function(c) mean(!posf(score[status == 0], c))) obj <- if (grepl("Youden", method)) sens + spec - 1 else if (grepl("top-left", method)) -((1 - sens)^2 + (1 - spec)^2) else if (grepl("sensitivity", method)) ifelse(sens >= cible - 1e-12, spec, -Inf) sinon si (grepl("spécificité", méthode)) si sinon (spec >= cible - 1e-12, sens, -Inf) sinon -(cr * prev * (1 - sens) + (1 - prev) * (1 - spec)) stopifnot(is.finite(max(obj))) # méthodes fixes : la cible doit être atteignable i <- which(obj >= max(obj) - 1e-12)[1] # égalités -> seuil le plus bas c(seuil = cut[i], sensibilité = sens[i], spécificité = spec[i], J = sens[i] + spec[i] - 1) cp <- fonction(x, n) c(si (x == 0) 0 sinon qbeta(.025, x, n - x + 1), si (x == n) 1 sinon qbeta(.975, x + 1, n - x)) cp(round(sens[i] * P), P); cp(round(spec[i] * N), N) # IC exact (Clopper-Pearson) à 95 % # AUC avec IC de DeLong : library(pROC); r <- roc(status, score, direction = ifelse(higher, "<", ">")); auc(r); ci.auc(r, method = "delong")Mode d'emploi
Quand l'utiliser ? Choisissez un seuil de décision unique pour un marqueur diagnostique continu et visualisez la sensibilité, la spécificité, les valeurs prédictives, les rapports de vraisemblance et l'AUC à ce seuil. Cinq critères sont comparés : l'indice de Youden, le critère le plus proche du coin supérieur gauche, la sensibilité fixe, la spécificité fixe et le coût attendu compte tenu de la prévalence et du coût relatif d'un faux négatif.
Hypothèses. Une valeur de marqueur par sujet, avec un statut de référence 0/1 ; sujets indépendants. Les seuils potentiels correspondent aux points médians entre deux valeurs de marqueur consécutives et distinctes (les mêmes seuils que ceux utilisés par pROC) ; un sujet est considéré comme positif lorsque la valeur du marqueur est supérieure ou égale au seuil (ou inférieure ou égale si les valeurs plus basses sont plus positives). Les valeurs prédictives pour une prévalence différente ne sont valides que si la sensibilité et la spécificité sont transposables à cette population.
Erreurs fréquentes. Le seuil et sa précision sont choisis et estimés sur les mêmes données et sont optimistes ; il convient de les valider sur de nouvelles données ou par bootstrap, notamment avec moins de 30 sujets par classe. Différents critères peuvent légitimement donner des seuils différents (Perkins & Schisterman). N’utilisez pas la prévalence de l’échantillon pour le calcul de la VPP/VPN lorsque les cas et les témoins ont été échantillonnés séparément ; indiquez plutôt la prévalence réelle. L’intervalle de confiance de l’AUC est une approximation normale (DeLong) tronquée à [0, 1] et n’est pas fiable au voisinage de 1 ou avec un très petit nombre de sujets.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Youden WJ. Index pour l'évaluation des tests diagnostiques. Cancer. 1950;3(1):32-35.
- Clopper CJ, Pearson ES. L'utilisation des limites de confiance ou fiducielles illustrée dans le cas du binôme. Biometrika. 1934;26(4):404-413.
- DeLong ER, DeLong DM, Clarke-Pearson DL. Comparaison des aires sous deux ou plusieurs courbes ROC (Receiver Operating Characteristic) corrélées : une approche non paramétrique. Biometrics. 1988;44(3):837-845.
- Perkins NJ, Schisterman EF. L'incohérence des seuils « optimaux » obtenus à l'aide de deux critères basés sur la courbe ROC (Receiver Operating Characteristic). Am J Epidemiol. 2006;163(7):670-675.
- Robin X, Turck N, Hainard A, et al. pROC : un package open-source pour R et S+ permettant d’analyser et de comparer les courbes ROC. BMC Bioinformatics. 2011 ;12 :77.
Résultats attendus : 3 colonnes : Résultat observé (une valeur par sujet) | Probabilité prédite (modèle/marqueur 1) | Probabilité prédite (modèle 2)
Déposez un fichier CSV ici ou cliquez pour en choisir un. Analyse effectuée dans votre navigateur : aucun fichier n’est téléchargé.
Résultats attendus : 3 colonnes : Résultat observé (une valeur par sujet) | Probabilité prédite (modèle/marqueur 1) | Probabilité prédite (modèle 2)
y <- c({status}) # résultat observé, 1 = événement p1 <- c({p1}) # risque prédit, modèle 1 p2 <- c({p2}) # risque prédit, modèle 2 (laisser c() vide pour un seul modèle) thr <- round(seq({tmin}, {tmax}, by = {tstep}), 10) nb <- function(p, y, pt) { # bénéfice net ; Traiter lorsque le risque prédit >= seuil. `treat <- p >= pt - 1e-12` `sum(treat & y == 1) / length(y) - sum(treat & y == 0) / length(y) * pt / (1 - pt)` `prev <- mean(y)` `dca <- data.frame(threshold = thr, treat_all = prev - (1 - prev) * thr / (1 - thr), treat_none = 0, model1 = sapply(thr, function(t) nb(p1, y, t)))` `if (length(p2))` `dca$model2 <- sapply(thr, function(t) nb(p2, y, t))` `print(dca[dca$threshold %in% c(0.05, 0.10, 0.20, 0.30, 0.40, 0.50), ])` matplot(dca$threshold, dca[, -1], type = "l", lty = c(2, 1, 1, 1), lwd = 2, col = c("grey50", "black", "#1a5276", "#c0504d"), ylim = c(-0.05, prev), xlab = "Probabilité de seuil", ylab = "Bénéfice net") legend("topright", c("Traitement de tous", "Traitement d'aucun", "{label1}", if (length(p2)) "{label2}"), lty = c(2, 1, 1, 1), col = c("grey50", "black", "#1a5276", "#c0504d"), lwd = 2, bty = "n")Mode d'emploi
Quand l'utiliser. Évaluer si un modèle de prédiction ou un marqueur améliorerait les décisions cliniques : le bénéfice net compare les vrais positifs aux faux positifs au seuil de risque où un patient ou un clinicien agirait, et compare le modèle au traitement de tous ou à l'absence de traitement.
Hypothèses. Les valeurs prédites sont des probabilités calibrées entre 0 et 1 pour un résultat binaire observé chez chaque sujet (absence de censure) ; les mêmes sujets sont utilisés pour tous les modèles ; la plage de seuil reflète les risques susceptibles d’influencer la décision. Les courbes issues des données utilisées pour ajuster le modèle sont optimistes.
Erreurs fréquentes. N’utilisez pas les scores bruts qui ne sont pas des probabilités, n’interprétez pas les courbes en dehors d’une plage de seuil cliniquement pertinente et ne concluez pas à un bénéfice à partir de petites différences sans validation : cet outil n’affiche aucun intervalle de confiance ni aucune correction pour le surapprentissage. Le bénéfice net n’est pas une mesure de précision telle que l’AUC.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Vickers AJ, Elkin EB. Analyse des courbes de décision : une méthode novatrice d’évaluation des modèles de prédiction. Med Decis Making. 2006 ;26(6) :565-574. doi :10.1177/0272989X06295361
- Vickers AJ, van Calster B, Steyerberg EW. Approches du bénéfice net pour l'évaluation des modèles de prédiction, des marqueurs moléculaires et des tests diagnostiques. BMJ. 2016;352:i6. doi:10.1136/bmj.i6
- Vickers AJ, van Calster B, Steyerberg EW. Guide simple et progressif pour l'interprétation de l'analyse des courbes de décision. Diagn Progn Res. 2019;3:18. doi:10.1186/s41512-019-0064-7
AUC : Var(A) = [A(1−A) + (n1−1)(Q1-A2) + (n0−1)(Q2-A2)] / (n1n0), Q1 = A/(2−A), Q2 = 2A2/(1+A). Plus petit n1 (n0 = plafond(ratio·n1)) avec A−A0 ≥ z1−α/2√Var0 +zpower√Var1; précision uniquement : z1−α/2√Var(A) ≤ d. Jumelé : Var(A1-A2) = Var(A1) + Var(A2) − 2r√(Var(A1)Var(A2)).
# Taille de l'échantillon pour les études de précision diagnostique (R de base, sans packages) goal <- "{goal}"; alpha <- {alpha} za <- qnorm(1 - alpha / 2) if (grepl("Buderer", goal)) { # Buderer 1996 / Flahault 2005 : n = z^2 P (1 - P) / d^2, puis diviser par la prévalence ou 1 - prévalence se <- {se} / 100; sp <- {sp} / 100; prev <- {prev} / 100; d <- {d} / 100 n_dis <- za^2 * se * (1 - se) / d^2 # nombre de malades nécessaires pour la sensibilité (non arrondi) n_non <- za^2 * sp * (1 - sp) / d^2 # nombre de non-malades nécessaires pour la spécificité (non arrondi) tot_se <- ceiling(n_dis / prev); tot_sp <- ceiling(n_non / (1 - prev)) c(diseased = ceiling(n_dis), nondiseased = ceiling(n_non), total_sensitivity = tot_se, total_specificity = tot_sp, required_total = max(tot_se, tot_sp)) } else { # Variance de l'AUC selon Hanley & McNeil (1982) ; n0 = ceiling(ratio * n1) A <- {auc}; A0 <- {auc0}; A2 <- {auc2}; r <- {rho}; ratio <- {ratio} pw <- {power} / 100; dd <- {d} / 100; zb <- qnorm(pw) hmvar <- function(A, n1, n0) { Q1 <- A / (2 - A); Q2 <- 2 * A^2 / (1 + A) (A * (1 - A) + (n1 - 1) * (Q1 - A^2) + (n0 - 1) * (Q2 - A^2)) / (n1 * n0) } # Hanley & McNeil (1983) : Var(A1 - A2) = Var(A1) + Var(A2) - 2 r SE1 SE2 vd <- function(A1, A2, n1, n0) { v1 <- hmvar(A1, n1, n0); v2 <- hmvar(A2, n1, n0); v1 + v2 - 2 * r * sqrt(v1 * v2) } if (grepl("correlated", goal)) { Ab <- (A + A2) / 2; D <- abs(A - A2) ok <- function(n1) { n0 <- ceiling(ratio * n1); D >= za * sqrt(vd(Ab, Ab, n1, n0)) + zb * sqrt(vd(A, A2, n1, n0)) } okp <- function(n1) { n0 <- plafond(ratio * n1); za * sqrt(vd(A, A2, n1, n0)) <= dd } } else { ok <- function(n1) { n0 <- plafond(ratio * n1); A - A0 >= za * sqrt(hmvar(A0, n1, n0)) + zb * sqrt(hmvar(A, n1, n0)) } okp <- function(n1) { n0 <- plafond(ratio * n1); za * sqrt(hmvar(A, n1, n0)) <= dd } } n1 <- 2; tant que (!ok(n1)) n1 <- n1 + 1 p1 <- 2; tant que (!okp(p1)) p1 <- p1 + 1 c(positifs = n1, négatifs = plafond(ratio * n1), total = n1 + plafond(ratio * n1), total_précision_uniquement = p1 + plafond(ratio * p1)) }Mode d'emploi
Quand l'utiliser. Déterminez le nombre de participants nécessaires à une étude de précision diagnostique : pour estimer la sensibilité et la spécificité avec une précision choisie (Buderer), pour montrer qu'une AUC dépasse une valeur nulle, ou pour comparer les AUC de deux tests lus sur les mêmes sujets.
Hypothèses. Buderer : Intervalles de Wald (approximation normale), donc d doit être suffisamment petit pour que l’intervalle reste compris entre 0 et 100 % ; la prévalence est celle de l’échantillon recruté. AUC : la variance de Hanley-McNeil est une approximation lisse qui suppose des distributions de scores approximativement binormales ; les résultats concernent l’AUC empirique (test de Mann-Whitney) et une statistique de test normale. Comparaison appariée : r est la corrélation entre les deux estimations d’AUC, telles qu’elles ont été saisies, et doit provenir de données pilotes ou de la littérature.
Erreurs fréquentes. Ne pas interpréter le résultat de Buderer comme un calcul de puissance pour un test d'hypothèse (il ne concerne que la largeur de l'intervalle de confiance). Ne pas utiliser les résultats de l'AUC pour de très petits échantillons (quelques cas de maladie), pour une AUC partielle ou pour des données groupées/multi-lecteurs. Pour une sensibilité exacte ou très élevée/faible, utiliser une planification binomiale exacte ou un logiciel dédié.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Buderer NMF. Méthodologie statistique : I. Intégration de la prévalence de la maladie dans le calcul de la taille de l'échantillon pour la sensibilité et la spécificité. Acad Emerg Med. 1996;3(9):895-900.
- Flahault A, Cadilhac M, Thomas G. Le calcul de la taille de l'échantillon doit être effectué pour garantir la précision de la conception dans les études de tests diagnostiques. J Clin Epidemiol. 2005;58(8):859-862.
- Hanley JA, McNeil BJ. La signification et l'utilisation de l'aire sous une courbe caractéristique de fonctionnement du récepteur (ROC). Radiology. 1982;143(1):29-36.
- Hanley JA, McNeil BJ. Une méthode de comparaison des aires sous les courbes caractéristiques de fonctionnement du récepteur dérivées des mêmes cas. Radiology. 1983;148(3):839-843.
- Obuchowski NA. Calculs de la taille de l'échantillon dans les études de précision des tests. Stat Methods Med Res. 1998;7(4):371-392.
tp <- {tp}; fp <- {fp}; fn <- {fn}; tn <- {tn}; pretest <- {pretest} # probabilité de pré-test, % if (any(c(tp, fp, fn, tn) == 0)) { tp <- tp + .5; fp <- fp + .5; fn <- fn + .5; tn <- tn + .5 } # correction des cellules nulles sens <- tp/(tp+fn); spec <- tn/(tn+fp) # À partir de sens/spec : sens <- {sens}/100; spec <- {spec}/100 lrp <- sens/(1-spec); lrn <- (1-sens)/spec # À partir des LR : lrp <- {lrp}; lrn <- {lrn} se_p <- sqrt(1/tp - 1/(tp+fn) + 1/fp - 1/(fp+tn)); se_n <- sqrt(1/fn - 1/(tp+fn) + 1/tn - 1/(fp+tn)) ci <- function(l, se) exp(log(l) + c(-1, 1) * qnorm(0.975) * se) odds <- (pretest/100) / (1 - pretest/100) post <- function(l) { o <- odds * l; 100 * o / (1 + o) } liste(LRplus = c(lrp, ci(lrp, se_p)), LRminus = c(lrn, ci(lrn, se_n)), post_positive = post(lrp), post_negative = post(lrn))Mode d'emploi
Quand l'utiliser. Convertir un résultat de test en une probabilité post-test : saisir la sensibilité/spécificité, un tableau 2×2 ou des rapports de vraisemblance publiés, définir la probabilité pré-test et lire la réponse dans le tableau ou le nomogramme de Fagan.
Hypothèses. La sensibilité et la spécificité sont transposables à votre contexte ; la probabilité pré-test est réaliste (prévalence ou estimation clinique) ; le résultat est dichotomique. Pour des effectifs 2×2, l’IC utilise la méthode logarithmique (Simel 1991), qui suppose des effectifs cellulaires suffisants. Si une cellule contient zéro, 0.5 est ajouté à chaque cellule avant le calcul du rapport de vraisemblance (LR) et de l’IC (correction de continuité), comme indiqué sur la page.
Erreurs fréquentes. Ne pas chaîner les rapports de vraisemblance de tests corrélés comme s'ils étaient indépendants. Le rapport de vraisemblance (RV) calculé à partir de la sensibilité et de la spécificité exprimées en pourcentages ne comporte pas d'intervalle de confiance (les effectifs sont nécessaires). Une spécificité de 100 % donne un RV+ infini ; en mode effectifs, la correction de 0.5 donne une valeur finie, mais avec un intervalle très large.
Exemple concret
Cliquez sur « Charger les données d'exemple » ci-dessus, puis sur « Lancer l'analyse » pour afficher un résultat complet avec figure, formule et interprétation pour ce test.
Références
- Fagan TJ. Nomogramme pour le théorème de Bayes. N Engl J Med. 1975;293(5):257.
- Simel DL, Samsa GP, Matchar DB. Rapports de vraisemblance avec confiance : estimation de la taille de l’échantillon pour les études de tests diagnostiques. J Clin Epidemiol. 1991;44(8):763-770.
- Deeks JJ, Altman DG. Tests diagnostiques 4 : rapports de vraisemblance. BMJ. 2004;329(7458):168-169.
Tous les outils de recherche gratuits
Chaque outil ci-dessous fonctionne entièrement dans votre navigateur : aucun compte, aucun téléchargement, aucune donnée ne quitte votre appareil. Chaque outil possède sa propre page contenant la formule, ses hypothèses, un exemple d’application, les références principales et la commande R permettant de reproduire le problème.
Statistiques de base
Clinique et diagnostic
Survie et régression
Tests non paramétriques
Accord et fiabilité
Validation des méthodes et des laboratoires
Conception d'essais cliniques
Méta-analyse et synthèse des données probantes
Diagrammes de flux des lignes directrices de rapport
Choisir un test
Lectures complémentaires
Des guides et des sources évaluées par des pairs pour vous aider à choisir, exécuter et présenter l'analyse appropriée.
- Quel test statistique dois-je utiliser ? — sélecteur interactif
- Calculateur d'analyse de la taille de l'échantillon et de la puissance
- Comprendre les valeurs p et la signification statistique
- Méta-analyse : Diagrammes en forêt et hétérogénéité
- Les 44 calculateurs statistiques gratuits
- Greenland S, et al. Tests statistiques, valeurs P, intervalles de confiance et puissance : un guide des erreurs d'interprétation. Eur J Epidemiol. 2016.PMID 27209009 · Texte intégral gratuit
- Franc JM. Analyse des données appariées. Prehosp Disaster Med. 2025.PMID 40213959 · l'erreur de données appariées
- Altman N, Krzywinski M. Comprendre les valeurs p et la signification. Anim de laboratoire. 2024.PMID 39315628 · Taille de l'effet et tests multiples
Demande d'aide statistique
Décrivez-nous vos données et l'analyse dont vous avez besoin. Un biostatisticien titulaire d'un doctorat vous répondra avec la solution adaptée et un plan précis, généralement sous 24 heures ouvrables.
