Analyse exploratoire des données



Documents pareils
Exercices M1 SES Ana Fermin ( fermin.perso.math.cnrs.fr/ ) 14 Avril 2015

Lire ; Compter ; Tester... avec R

Logiciel XLSTAT version rue Damrémont PARIS

Introduction aux Statistiques et à l utilisation du logiciel R

Optimiser ses graphiques avec R

Analyse discriminante et régression logistique: application au cas de l innovation pour les entreprises du Canton du Tessin

1 Objectifs. Traitement statistique des données d enquête avec introduction à SPSS. Plan

Statistiques Appliquées à l Expérimentation en Sciences Humaines. Christophe Lalanne, Sébastien Georges, Christophe Pallier

Représentation d une distribution

Séries Statistiques Simples

Initiation à l analyse en composantes principales

Annexe commune aux séries ES, L et S : boîtes et quantiles

TABLE DES MATIÈRES. Bruxelles, De Boeck, 2011, 736 p.

Tests non-paramétriques de non-effet et d adéquation pour des covariables fonctionnelles

Estimation et tests statistiques, TD 5. Solutions

Analyse statistique de données qualitatives et quantitatives en sciences sociales : TP RÉGRESSION LOGISTIQUE (MODÈLES CHAPITRE 1)

Statistique : Résumé de cours et méthodes

Statistiques Descriptives à une dimension

LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING»

Cours 1. I- Généralités sur R II- Les fonctions de R et autres objets III-Les vecteurs

UNE REPRESENTATION GRAPHIQUE DE LA LIAISON STATISTIQUE ENTRE DEUX VARIABLES ORDONNEES. Éric TÉROUANNE 1

Traitement des données avec Microsoft EXCEL 2010

Projet SINF2275 «Data mining and decision making» Projet classification et credit scoring

Utilisation du Logiciel de statistique SPSS 8.0

MANIPULATION ET VISUALISATION DE GROSSES BASES DE DONNÉES AVEC R

PREPROCESSING PAR LISSAGE LOESS POUR ACP LISSEE

Comment se servir de cet ouvrage? Chaque chapitre présente une étape de la méthodologie

FPSTAT 2 í La dçecision statistique. 1. Introduction ça l'infçerence. 1

3. Caractéristiques et fonctions d une v.a.

Introduction à l approche bootstrap

1 Importer et modifier des données avec R Commander

Gestion des données avec R

Tests statistiques et régressions logistiques sous R, avec prise en compte des plans d échantillonnage complexes

Principe de symétrisation pour la construction d un test adaptatif

Aide-mémoire de statistique appliquée à la biologie

Statistique Descriptive Élémentaire

Statistiques descriptives

Économetrie non paramétrique I. Estimation d une densité

Modèle de troncature gauche : Comparaison par simulation sur données indépendantes et dépendantes

Biostatistiques : Petits effectifs

1 Modélisation d être mauvais payeur

1. Vocabulaire : Introduction au tableau élémentaire

2010 Minitab, Inc. Tous droits réservés. Version Minitab, le logo Minitab, Quality Companion by Minitab et Quality Trainer by Minitab sont des

MATHÉMATIQUES. Mat-4104

Résumé du Cours de Statistique Descriptive. Yves Tillé

Introduction à R. Florence Yerly. Dept. de mathématiques, Université de Fribourg (CH) SP 2011

UFR de Sciences Economiques Année TESTS PARAMÉTRIQUES

NON-LINEARITE ET RESEAUX NEURONAUX

Pratique de l analyse de données SPSS appliqué à l enquête «Identités et Capital social en Wallonie»

Précision d un résultat et calculs d incertitudes

Statistique descriptive. Fabrice MAZEROLLE Professeur de sciences économiques Université Paul Cézanne. Notes de cours

Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN

1 Installer des packages

Les simulations dans l enseignement des sondages Avec le logiciel GENESIS sous SAS et la bibliothèque Sondages sous R

IBM SPSS Statistics Base 20

LE RÔLE DE LA STATISTIQUE DANS UN PROCESSUS DE PRISE DE DÉCISION

données en connaissance et en actions?

Classe de première L

BASE. Vous avez alors accès à un ensemble de fonctionnalités explicitées ci-dessous :

BIG DATA : PASSER D UNE ANALYSE DE CORRÉLATION

Analyse des durées de vie avec le logiciel R

Analyse de grandes bases de données en santé

TABLE DES MATIERES. C Exercices complémentaires 42

La place de SAS dans l'informatique décisionnelle

Statistiques avec la graph 35+

Package TestsFaciles

Une méthode de classification supervisée sans paramètre pour l apprentissage sur les grandes bases de données

SIG ET ANALYSE EXPLORATOIRE

Extraction d information des bases de séquences biologiques avec R

Tests d indépendance en analyse multivariée et tests de normalité dans les modèles ARMA

distribution quelconque Signe 1 échantillon non Wilcoxon gaussienne distribution symétrique Student gaussienne position

PLAN DE COURS CEGEP DU VIEUX-MONTRÉAL

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

Exploitation et analyse des données appliquées aux techniques d enquête par sondage. Introduction.

Principe d un test statistique

La classification automatique de données quantitatives

Projet de Traitement du Signal Segmentation d images SAR

quelques Repères pour Doctorants

Rapport de Mini-Projet en ArcGIS Engine

Feuille 6 : Tests. Peut-on dire que l usine a respecté ses engagements? Faire un test d hypothèses pour y répondre.

Problèmes arithmétiques issus de la cryptographie reposant sur les réseaux

Table des matières. I Mise à niveau 11. Préface


Utilisation du module «Geostatistical Analyst» d ARCVIEW dans le cadre de la qualité de l air

Lecture critique d article. Bio statistiques. Dr MARC CUGGIA MCU-PH Laboratoire d informatique médicale EA-3888

PROBABILITES ET STATISTIQUE I&II

Scénario: Données bancaires et segmentation de clientèle

Introduction à MATLAB R

Etude des propriétés empiriques du lasso par simulations

Définition d un Template

Gestion de Portefeuille. Mesures de Performance Ajustées du Risque

CAPTEURS - CHAINES DE MESURES

INTRODUCTION AU DATA MINING

Une comparaison de méthodes de discrimination des masses de véhicules automobiles

La carte, le territoire et l'explorateur où est la visualisation? Jean-Daniel Fekete Equipe-projet AVIZ INRIA

BACCALAURÉAT PROFESSIONNEL SUJET

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

Population responses to environmental forcing : approaches to model and monitor habitat characteristics

Extraction d informations stratégiques par Analyse en Composantes Principales

DETERMINATION DE L INCERTITUDE DE MESURE POUR LES ANALYSES CHIMIQUES QUANTITATIVES

Transcription:

Analyse exploratoire des données Introduction à R pour la recherche biomédicale http://wwwaliquoteorg/cours/2012_biomed

Objectifs Au travers de l analyse exploratoire des données, on cherche essentiellement à résumer la distribution de chaque variable (approche univariée) ainsi que les relations entre les variables (approche bivariée essentiellement), dont les caractéristiques pourraient suggérer un recodage ou une transformation des mesures (Tukey, 1977) Plutôt que de modéliser directement les données, on s attachera donc dans un premier temps à les décrire à l aide de résumés numériques et graphiques L idée est de caractériser la forme d une distribution et d identifier les éventuelles valeurs influentes On profitera de cette approche pour présenter les principales fonctionnalités graphiques de R, en particulier l interface lattice (Murrell, 2005; Sarkar, 2008)

Un jeu de données d exemple The low birth weight study Il s agit d une étude prospective visant à identifier les facteurs de risque associés à la naissance de bébés dont le poids est inférieur à la norme (2,5 kg) Les données proviennent de 189 femmes, dont 59 ont accouché d un enfant en sous-poids Parmi les variables d intérêt figurent l âge de la mère, le poids de la mère lors des dernières menstruations, l ethnicité de la mère et le nombre de visites médicales durant le premier trimestre de grossesse C est une des études qui sert de base aux traitements statistiques présentés dans Hosmer & Lemeshow (1989) Elle est disponible sous R dans le package MASS : data ( birthwt, package =" MASS ")

Traitement préalable Les données fournies dans R nécessitent quelques recodages: str ( birthwt ) summary ( birthwt ) birthwt <- within ( birthwt, { low <- factor (low, labels =c("no"," Yes ")) race <- factor (race, labels =c(" White "," Black "," Other ")) smoke <- factor (smoke, labels =c("no"," Yes ")) ui <- factor (ui, labels =c("no"," Yes ")) ht <- factor (ht, labels =c("no"," Yes ")) }) Il est intéressant d ajouter les unités de mesure, pour s en souvenir lorsqu on en a besoin (le poids de la mère est en pounds, celui des bébés en kg!) library ( Hmisc ) birthwt <- within ( birthwt, { units ( age ) <- " years " units ( lwt ) <- " pounds " })

Valeurs extrêmes, atypiques ou outliers filterr Il n y a pas vraiment de consensus sur la dénomination correcte des valeurs qui ne ressemblent pas à la majorité des valeurs observées Une valeur extrême ou atypique est souvent assimilée à une valeur qui est située à plus de 15 IQR des quartiles supérieurs et inférieurs Un outlier est une valeur susceptible d influencer les résultats obtenus par un modèle statistique idx <- sapply ( birthwt, is numeric ) bwt <- apply ( birthwt [, idx ], 2, scale ) boxplot ( bwt ) On peut aussi chercher des patterns multivariés (pex, des individus avec des valeurs sytématiquement élevées ou basses) parallel (bwt, groups = birthwt $low, horiz = FALSE ) idx <- apply (bwt, 2, filterperc, cutoff =c(01, 99 ), collate = TRUE ) mycol <- asnumeric (1: nrow ( bwt ) % in % unique ( unlist ( idx )))1 splom ( bwt, pch =19, col = mycol, alpha =5, cex =6)

Résumé de la structure de données Un aperçu synthétique des données, stratifié par groupe de poids des bébés, peut être obtenu comme suit : summary ( low, data = birthwt [, -10], method =" reverse ") library ( latticeextra ) marginalplot ( birthwt, data = birthwt, groups = low ) low Low baby weight No Yes age lwt No Yes 20 30 40 100 150 200 250 race smoke ptl White Other ht Black No ui Yes None ftv 1 No Yes No Yes No Yes

Synthèse numérique et transformation On peut aussi recoder certaines des variables discrètes (ftv et ptl) en variables binaires, pour la description ou pour la modélisation : bwtdf <- transform ( birthwt [, -10], ftv = factor (ftv >0, lab =c("no"," Yes ")), ptl = factor (ptl >0, lab =c(" None ","1"))) summary ( low, data = bwtdf, method =" reverse ") Il n est pas nécessaire de stratifier pour résumer les données, mais dans le cas présent il est intéressant de vérifier la distribution des variables pour les deux groupes de bébés En ajoutant l option overall=true dans l expression ci-dessus, on obtient également le résumé numérique sur l ensemble de l échantillon Concernant les unités de mesure, on peut convertir à la volée lors de l appel à des fonctions comme mean ou summaryformula (ci-dessus) : mean ( birthwt $ lwt /22 ) # poids de la mère en kg summary ( lwt /22 low race, data = birthwt )

Synthèse numérique et transformation (2) D autres types de résumés numériques peuvent être produits avec summaryformul en particulier des tableaux croisés ou des descriptions stratifiées Pour plus d informations, consulter l excellent guide Hmisc : http://biostatmc vanderbiltedu/wiki/main/hmisc Description by low birth weight status (low) No Yes N = 130 N = 59 age years 190 230 280 195 220 250 lwt pounds 1130 1235 1470 1040 1200 1300 race : White 56% (73) 39% (23) Black 12% (15) 19% (11) Other 32% (42) 42% (25) smoke : Yes 34% (44) 51% (30) ptl : 1 9% ( 12) 31% ( 18) ht : Yes 4% ( 5) 12% ( 7) ui : Yes 11% ( 14) 24% ( 14) ftv : Yes 51% (66) 39% (23) a b c represent the three quartiles

Qu est-ce qu une distribution? Considérons l âge des mères, variable numérique souvent assimilée à une variable continue mais qui ici prend plutôt des valeurs discrètes La plupart des valeurs prises par la variable age semble se concentrer autour de la tranche 20-25 ans stripplot ( age, data = birthwt, jitterdata =TRUE, amount =3, aspect =3, cex =6) Diagramme de dispersion (1D) 20 30 40 age

Résumé numérique Mesures de tendance centrale (moyenne, médiane) associées à des mesures de dispersion relative (écart-type, IQR) # Tukey ' s five - point summary summary ( birthwt $ age ) quantile ( birthwt $age, probs =c(1, 25, 5, 75, 9 )) desc <- function (x, dig =2) round (c( ety =sd(x), iqr = IQR (x), "max - min "= diff ( range (x))), digits = dig ) desc ( birthwt $ age ) Autres possibilités : Estimateurs robustes Moyennée tronquée : mean(birthwt$age, trim=025) Déviation médiane absolue : mad(birthwt$age)

Fonction de répartition On peut représenter la distribution des effectifs cumulés à l aide d un diagramme quantile-quantile qqmath ( age, data = birthwt, dist = qunif ) L idée de base consistant à trier les données permet en outre d identifier facilement n importe quel quantile Un algorithme pour calculer la valeur médiane est indiqué ci-dessous med <- function ( x ) { oddeven <- length ( x) %% 2 if ( oddeven == 0) ( sort (x)[ length (x)/ 2] sort (x )[1 length (x)/ 2]) / 2 else sort (x)[ ceiling ( length (x)/ 2)] } age 40 30 20 75 % 50 % 25 % Distribution empirique 00 02 04 06 08 10 Fréquence cumulée On pourrait également comparer cette distribution empirique à une distribution théorique, par exemple une distribution gaussienne

Approche graphique On peut visualiser les cinq indicateurs renvoyés par la fonction summary à l aide d une boite à moustaches (Wickham & Stryjewski, sub) bwplot ( age, data = birthwt ) Dans la figure ci-dessous, la moyenne est indiquée par un point, l étendue des données est représentée par les moustaches, et 50 % des observations sont comprises entre les 1er et 3ème quartiles figurés par la boîte Boîte à moustaches 20 30 40 age

Histogramme Un histogramme permet de représenter la répartition des valeurs d une variable continue en classes Ici, on voit que la distribution du poids des mères est asymétrique (asymétrie > 0, indépendant de l unité de mesure) histogram ( lwt, data = birthwt, type =" count ") library ( e1071 ) skewness ( birthwt $ lwt ) Histogramme (options par défaut) 60 Effectifs 40 20 0 100 150 200 250 lwt

Histogramme (variations) Le paramètre breaks permet de changer le nombre d intervalles construits Par défaut, la méthode utilisée est la méthode de Sturges (Sturges, 1926) L ajout d une loi de densité gaussienne dont les paramètres sont estimés* à partir de l échantillon est également possible 5 intervalles 10 intervalles 0010 0005 0000 50 100 150 200 250 0015 0010 0005 0000 100 150 200 250 15 intervalles N(1298;306) superposée 0020 0015 0010 0005 0000 100 150 200 250 0015 0010 0005 0000 100 150 200 250 *Si l on estime les paramètres d une distribution empirique, les p-valeurs d un test d adéquation à une loi connue sont biaisées

Densité empirique Pour pallier à l arbitraire du choix du nombre d intervalles, on peut préférer représenter la fonction de densité empirique (Silverman, 1986; Venables & Ripley, 2002) Il reste toutefois à définir la largeur de la fenêtre de lissage associée à la fonction noyau de lissage (voir help(bwnrd0)) densityplot ( lwt, data = birthwt ) Fonction de densité empirique 0015 Densité 0010 0005 0000 50 100 150 200 250 lwt

Résumé numérique bivarié Dans le cas de deux variables continues, on peut s intéresser à la distribution jointe ou quantifier une certaine mesure de leur covariation, pex with ( birthwt, cor (lwt, bwt )) with ( birthwt, cor (lwt, bwt, method =" spearman ")) Lorsque l on croise une variable numérique avec une variable catégorielle, on peut produire des résumés numériques séparés pour chaque niveau de la variable de classification with ( birthwt, by(age, low, summary )) with ( birthwt, tapply (lwt, race, function (x) c( mean (x), sd(x )))) Des fonctionnalités étendues sont disponibles dans Hmisc La commande ci-dessus se résume à summary ( race lwt, data = birthwt, method =" reverse ") ou encore, si l on souhaite afficher moyenne et écart-type, print ( summary ( race lwt, birthwt, method =" reverse "), prmsd = TRUE )

Diagramme de dispersion Pour deux variables numériques, un diagramme de dispersion permet de résumer rapidement la distribution conjointe, ici dans les mêmes unités* : xyplot ( lwt /22 bwt / 1000, data = birthwt, type =c("p","r")) La concentration des points autour de la droite de régression est un bon indicateur de la consistance de l hypothèse de linéarité entre x et y 100 Poids mère (kg) 80 60 40 1 2 3 4 5 Poids enfant (kg) *Il existe d autres moyens d utiliser des transformations sur les unités de mesure en lien avec les graphiques lattice

Scatterplot smoother Supposer la linéarité n est pas toujours la meilleure des options, et peut masquer certaines distorsions locales dans la relation entre les deux variables Pour cette raison, on peut préférer utiliser une courbe plus flexible de type loess (Cleveland, 1979) Pour cela, on remplacera avantageusement type=c("p","r") (points droite de régression) par type=c("p","smooth") (points lowess) 100 Span 067 050 033 017 Poids mère (kg) 80 60 40 1 2 3 4 5 Poids enfant (kg)

Distributions conditionnelles Les diagrammes de type boîte à moustaches et densité empirique peuvent être conditionnés sur un facteur, ici l âge de la mère en fonction de l indicateur de poids à la naissance : bwplot ( low age, data = birthwt, panel = Hmisc :: panelbpplot ) Quantiles par défault : c(05,125,25,375) Yes No 20 30 40 age Cinq observations extrêmes affichées Yes No 20 30 40 age

Distributions conditionnelles (2) L avantage des densités non-paramétriques est que l on peut visualiser directement les variations dans l allure des distributions conditionnelles (tendance centrale et forme de la distribution) densityplot ( age, data = birthwt, groups = low, autokey = list ( columns =2), plotpoints = FALSE ) No Yes 008 006 Densité 004 002 000 10 20 30 40 50 age

Mesures aggrégées Plutôt que des diagrammes en barres (barchart), on préférera les diagrammes de type dotplot (Cleveland, 1985) pour représenter les données aggrégées, telles que des moyennes ou des proportions* agebyrace <- aggregate ( age race, data = birthwt, FUN = mean ) dotplot ( race age, data = agebyrace ) White Other Black 15 20 25 30 35 40 45 Age *En plus simple, grâce à Hmisc : plot(summary(race ~ age, birthwt, method="reverse"))

Croiser plus de deux variables Les graphiques en trellis (Becker, Cleveland, & Shyu, 1996; Cleveland, 1993) offrent une structure de graphique simple et efficace pour représenter des données multidimensionnelles En particulier, ils introduisent la notion de facettes pour représenter des distributions conditionnelles La notation utilisée est la notation par formule : y x a # y en fonction de x condit à a y x a b # y en fonction de x condit à a et b Les variables continues peuvent être catégorisées à l aide de shingles En transformant les variables numériques en facteurs, il devient possible de représenter un plus grand nombre de croisement de variables, tout en tenant compte de la nature continue des données Quelques exemples : xyplot ( bwt / 1000 lwt /22 smoke, data = birthwt, groups =ptl >0) bwplot ( age low smoke race, data = birthwt )

Illustrations xyplot ( bwt lwt /22 race, data = birthwt, layout =c(3,1), cex = sqrt ( birthwt $ ftv 5 ), col = birthwt $smoke, panel = function ( ) { panelxyplot ( ) panelabline (h =2500, lty =2)}) 5000 White 40 60 80 100 Black Other 4000 Poids bébé (g) 3000 2000 1000 40 60 80 100 Poids mère (kg) 40 60 80 100 *Ce n est pas toujours une bonne idée d utiliser cex ou col directement avec l interface lattice

Illustrations (2) Age <- equalcount ( birthwt $ age ) ftvc <- factor ( birthwt $ftv >1, labels =c("0 visite "," 1 visite ")) xyplot ( bwt / 1000 lwt /22 Age ftvc, data = birthwt, groups =low, pch ="") Poids bébé 1 visite1 visite1 visite1 visite1 visite1 visite Age Age Age Age Age Age 0 visite 0 visite Age Age 5 4 3 2 1 40 80 40 80 0 visite 0 visite 0 visite 0 visite Age Age Age Age 40 80 40 80 Poids mère 40 80 40 80 5 4 3 2 1 *Il est possible d utiliser des variables externes au dataframe

Ce qu il faut retenir Il est important de vérifier le codage des variables, et de recoder en fonction des besoins de l analyse ou de la visualisation On caractérise d abord les distributions univariées (toutes!) avant de passer aux visualisations/modèles multivariés Cela permet de détecter les éventuelles valeurs aberrantes, la mauvaise représentation de certaines modalités d une variable catégorielle, ou l existence d asymétrie dans les distributions L interface lattice utilise la même notation par formule que les fonctions R pour la modélisation statistique La visualisation des données catégorielles n a pas vraiment été abordée, mais de nombreux outils sont disponibles dans les packages vcd et vcdextra (Friendly, 2011; Meyer, Zeilis, & Hornik, 2006)

Index aggregate, 21 alpha, 5 amount, 9 apply, 5 asnumeric, 5 aspect, 9 autokey, 20 barchart, 21 boxplot, 5 breaks, 14 bwnrd0, 15 bwplot, 12, 19, 22 by, 16 c, 4, 5, 7, 10, 16 18, 23, 24 ceiling, 11 cex, 5, 9, 23 col, 5, 23 columns, 20 cor, 16 data, 3, 6, 7, 9, 11 13, 15 17, 19 24 densityplot, 15, 20 diff, 10 digits, 10 dist, 11 dotplot, 21 else, 11 equalcount, 24 factor, 4, 7, 24 FUN, 21 function, 10, 11, 16, 23 groups, 5, 6, 20, 22, 24 h, 23 help, 15 histogram, 13 horiz, 5 if, 11 in, 5 IQR, 10 isnumeric, 5 jitterdata, 9 lab, 7 labels, 4, 24 layout, 23 length, 11 library, 4, 6, 13 list, 20 loess, 18 lty, 23 mad, 10 marginalplot, 6 mean, 7, 10, 16, 21 method, 6, 7, 16 nrow, 5 overall, 7 package, 3 panel, 19, 23 panelabline, 23 panelbpplot, 19 panelxyplot, 23 pch, 5, 24 plotpoints, 20 print, 16 prmsd, 16 probs, 10 qqmath, 11 quantile, 10 qunif, 11 range, 10 round, 10 sapply, 5 scale, 5 sd, 10, 16 shingle, 22 skewness, 13 sort, 11 sqrt, 23 str, 4 stripplot, 9 summary, 4, 6, 7, 10, 12, 16 summaryformula, 7, 8 tapply, 16 transform, 7 trim, 10 type, 13, 17, 18 unique, 5 units, 4 unlist, 5 with, 16 within, 4 xyplot, 17, 22 24

Bibliographie Becker, R A, Cleveland, W S, & Shyu, M J (1996) The Visual Design and Control of Trellis Display Journal of Computational and Statistical Graphics, 5, 123 155 Cleveland, W S (1979) Robust locally weighted regression and smoothing scatterplots Journal of the American Statistical Association, 74, 829 836 Cleveland, W S (1985) The Elements of Graphing Data Monterey, CA: Wadsworth Cleveland, W S (1993) Visualizing Data Hobart Press Friendly, M (2011) Tutorial: Working with categorical data with R and the vcd package Retrieved from http://wwwdatavisca/courses/vcd Hosmer, D, & Lemeshow, S (1989) Applied Logistic Regression New York: Wiley Meyer, D, Zeilis, A, & Hornik, K (2006) The Strucplot Framework: Visualizing Multi-way Contingency Tables with vcd Journal of Statistical Software, 17 Murrell, P (2005) R Graphics Chapman & Hall/CRC Sarkar, D (2008) Lattice, Multivariate Data Visualization with R Springer Silverman, B W (1986) Density estimation Chapman and Hall Sturges, H A (1926) The choice of a class interval Journal of the American Statistical Association, 65 66 Tukey, J W (1977) Exploratory Data Analysis Addison-Wesley Venables, W N, & Ripley, B D (2002) Modern Applied Statistics with S Springer Wickham, H, & Stryjewski, L (sub) 40 years of boxplots The American Statistican