Data Analysis Using Regression and Multilevel-Hierarchical Models

  • 99 112 8
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up

Data Analysis Using Regression and Multilevel-Hierarchical Models

This page intentionally left blank Data Analysis Using Regression and Multilevel/Hierarchical Models Data Analysis Usi

4,506 1,438 7MB

Pages 651 Page size 235 x 373 pts Year 2011

Report DMCA / Copyright


Recommend Papers

File loading please wait...
Citation preview

This page intentionally left blank

Data Analysis Using Regression and Multilevel/Hierarchical Models Data Analysis Using Regression and Multilevel/Hierarchical Models is a comprehensive manual for the applied researcher who wants to perform data analysis using linear and nonlinear regression and multilevel models. The book introduces and demonstrates a wide variety of models, at the same time instructing the reader in how to fit these models using freely available software packages. The book illustrates the concepts by working through scores of real data examples that have arisen in the authors’ own applied research, with programming code provided for each one. Topics covered include causal inference, including regression, poststratification, matching, regression discontinuity, and instrumental variables, as well as multilevel logistic regression and missing-data imputation. Practical tips regarding building, fitting, and understanding are provided throughout.

Andrew Gelman is Professor of Statistics and Professor of Political Science at Columbia University. He has published more than 150 articles in statistical theory, methods, and computation and in applications areas including decision analysis, survey sampling, political science, public health, and policy. His other books are Bayesian Data Analysis (1995, second edition 2003) and Teaching Statistics: A Bag of Tricks (2002). Jennifer Hill is Assistant Professor of Public Affairs in the Department of International and Public Affairs at Columbia University. She has coauthored articles that have appeared in the Journal of the American Statistical Association, American Political Science Review, American Journal of Public Health, Developmental Psychology, the Economic Journal, and the Journal of Policy Analysis and Management, among others.

Analytical Methods for Social Research Analytical Methods for Social Research presents texts on empirical and formal methods for the social sciences. Volumes in the series address both the theoretical underpinnings of analytical techniques and their application in social research. Some series volumes are broad in scope, cutting across a number of disciplines. Others focus mainly on methodological applications within specific fields such as political science, sociology, demography, and public health. The series serves a mix of students and researchers in the social sciences and statistics. Series Editors: R. Michael Alvarez, California Institute of Technology Nathaniel L. Beck, New York University Lawrence L. Wu, New York University Other Titles in the Series: Event History Modeling: A Guide for Social Scientists, by Janet M. Box-Steffensmeier and Bradford S. Jones Ecological Inference: New Methodological Strategies, edited by Gary King, Ori Rosen, and Martin A. Tanner Spatial Models of Parliamentary Voting, by Keith T. Poole Essential Mathematics for Political and Social Research, by Jeff Gill Political Game Theory: An Introduction, by Nolan McCarty and Adam Meirowitz

Data Analysis Using Regression and Multilevel/Hierarchical Models

ANDREW GELMAN Columbia University

JENNIFER HILL Columbia University


Cambridge, New York, Melbourne, Madrid, Cape Town, Singapore, São Paulo Cambridge University Press The Edinburgh Building, Cambridge CB2 8RU, UK Published in the United States of America by Cambridge University Press, New York Information on this title: © Andrew Gelman and Jennifer Hill 2007 This publication is in copyright. Subject to statutory exception and to the provision of relevant collective licensing agreements, no reproduction of any part may take place without the written permission of Cambridge University Press. First published in print format 2006 ISBN-13 ISBN-10

978-0-511-26878-6 eBook (EBL) 0-511-26878-5 eBook (EBL)


978-0-521-86706-1 hardback 0-521-86706-1 hardback


978-0-521-68689-1 paperback 0-521-68689-X paperback

Cambridge University Press has no responsibility for the persistence or accuracy of urls for external or third-party internet websites referred to in this publication, and does not guarantee that any content on such websites is, or will remain, accurate or appropriate.

Data Analysis Using Regression and Multilevel/Hierarchical Models (Corrected final version: 9 Aug 2006) Please do not reproduce in any form without permission

Andrew Gelman Department of Statistics and Department of Political Science Columbia University, New York

Jennifer Hill School of International and Public Affairs Columbia University, New York

c 2002, 2003, 2004, 2005, 2006 by Andrew Gelman and Jennifer Hill To be published in October, 2006 by Cambridge University Press

For Zacky and for Audrey


page xvii

List of examples Preface


1 Why? 1.1 What is multilevel regression modeling? 1.2 Some examples from our own research 1.3 Motivations for multilevel modeling 1.4 Distinctive features of this book 1.5 Computing

1 1 3 6 8 9

2 Concepts and methods from basic probability and statistics 2.1 Probability distributions 2.2 Statistical inference 2.3 Classical confidence intervals 2.4 Classical hypothesis testing 2.5 Problems with statistical significance 2.6 55,000 residents desperately need your help! 2.7 Bibliographic note 2.8 Exercises

13 13 16 18 20 22 23 26 26

Part 1A: Single-level regression


3 Linear regression: the basics 3.1 One predictor 3.2 Multiple predictors 3.3 Interactions 3.4 Statistical inference 3.5 Graphical displays of data and fitted model 3.6 Assumptions and diagnostics 3.7 Prediction and validation 3.8 Bibliographic note 3.9 Exercises

31 31 32 34 37 42 45 47 49 49

4 Linear regression: before and after fitting the model 4.1 Linear transformations 4.2 Centering and standardizing, especially for models with interactions 4.3 Correlation and “regression to the mean” 4.4 Logarithmic transformations 4.5 Other transformations 4.6 Building regression models for prediction 4.7 Fitting a series of regressions

53 53 55 57 59 65 68 73



CONTENTS 4.8 4.9

Bibliographic note Exercises

74 74

5 Logistic regression 5.1 Logistic regression with a single predictor 5.2 Interpreting the logistic regression coefficients 5.3 Latent-data formulation 5.4 Building a logistic regression model: wells in Bangladesh 5.5 Logistic regression with interactions 5.6 Evaluating, checking, and comparing fitted logistic regressions 5.7 Average predictive comparisons on the probability scale 5.8 Identifiability and separation 5.9 Bibliographic note 5.10 Exercises

79 79 81 85 86 92 97 101 104 105 105

6 Generalized linear models 6.1 Introduction 6.2 Poisson regression, exposure, and overdispersion 6.3 Logistic-binomial model 6.4 Probit regression: normally distributed latent data 6.5 Multinomial regression 6.6 Robust regression using the t model 6.7 Building more complex generalized linear models 6.8 Constructive choice models 6.9 Bibliographic note 6.10 Exercises

109 109 110 116 118 119 124 125 127 131 132

Part 1B: Working with regression inferences


7 Simulation of probability models and statistical inferences 7.1 Simulation of probability models 7.2 Summarizing linear regressions using simulation: an informal Bayesian approach 7.3 Simulation for nonlinear predictions: congressional elections 7.4 Predictive simulation for generalized linear models 7.5 Bibliographic note 7.6 Exercises

137 137

8 Simulation for checking statistical procedures and model fits 8.1 Fake-data simulation 8.2 Example: using fake-data simulation to understand residual plots 8.3 Simulating from the fitted model and comparing to actual data 8.4 Using predictive simulation to check the fit of a time-series model 8.5 Bibliographic note 8.6 Exercises

155 155 157 158 163 165 165

9 Causal inference using regression on the treatment variable 9.1 Causal inference and predictive comparisons 9.2 The fundamental problem of causal inference 9.3 Randomized experiments 9.4 Treatment interactions and poststratification

167 167 170 172 178

140 144 148 151 152

CONTENTS 9.5 9.6 9.7 9.8 9.9 9.10

Observational studies Understanding causal inference in observational studies Do not control for post-treatment variables Intermediate outcomes and causal paths Bibliographic note Exercises

xi 181 186 188 190 194 194

10 Causal inference using more advanced models 199 10.1 Imbalance and lack of complete overlap 199 10.2 Subclassification: effects and estimates for different subpopulations 204 10.3 Matching: subsetting the data to get overlapping and balanced treatment and control groups 206 10.4 Lack of overlap when the assignment mechanism is known: regression discontinuity 212 10.5 Estimating causal effects indirectly using instrumental variables 215 10.6 Instrumental variables in a regression framework 220 10.7 Identification strategies that make use of variation within or between groups 226 10.8 Bibliographic note 229 10.9 Exercises 231 Part 2A: Multilevel regression


11 Multilevel structures 11.1 Varying-intercept and varying-slope models 11.2 Clustered data: child support enforcement in cities 11.3 Repeated measurements, time-series cross sections, and other non-nested structures 11.4 Indicator variables and fixed or random effects 11.5 Costs and benefits of multilevel modeling 11.6 Bibliographic note 11.7 Exercises

237 237 237

12 Multilevel linear models: the basics 12.1 Notation 12.2 Partial pooling with no predictors 12.3 Partial pooling with predictors 12.4 Quickly fitting multilevel models in R 12.5 Five ways to write the same model 12.6 Group-level predictors 12.7 Model building and statistical significance 12.8 Predictions for new observations and new groups 12.9 How many groups and how many observations per group are needed to fit a multilevel model? 12.10 Bibliographic note 12.11 Exercises

251 251 252 254 259 262 265 270 272

241 244 246 247 248

275 276 277

13 Multilevel linear models: varying slopes, non-nested models, and other complexities 279 13.1 Varying intercepts and slopes 279 13.2 Varying slopes without varying intercepts 283


CONTENTS 13.3 Modeling multiple varying coefficients using the scaled inverseWishart distribution 13.4 Understanding correlations between group-level intercepts and slopes 13.5 Non-nested models 13.6 Selecting, transforming, and combining regression inputs 13.7 More complex multilevel models 13.8 Bibliographic note 13.9 Exercises

287 289 293 297 297 298

14 Multilevel logistic regression 14.1 State-level opinions from national polls 14.2 Red states and blue states: what’s the matter with Connecticut? 14.3 Item-response and ideal-point models 14.4 Non-nested overdispersed model for death sentence reversals 14.5 Bibliographic note 14.6 Exercises

301 301 310 314 320 321 322

15 Multilevel generalized linear models 15.1 Overdispersed Poisson regression: police stops and ethnicity 15.2 Ordered categorical regression: storable votes 15.3 Non-nested negative-binomial model of structure in social networks 15.4 Bibliographic note 15.5 Exercises

325 325 331 332 342 342

Part 2B: Fitting multilevel models


16 Multilevel modeling in Bugs and R: the basics 16.1 Why you should learn Bugs 16.2 Bayesian inference and prior distributions 16.3 Fitting and understanding a varying-intercept multilevel model using R and Bugs 16.4 Step by step through a Bugs model, as called from R 16.5 Adding individual- and group-level predictors 16.6 Predictions for new observations and new groups 16.7 Fake-data simulation 16.8 The principles of modeling in Bugs 16.9 Practical issues of implementation 16.10 Open-ended modeling in Bugs 16.11 Bibliographic note 16.12 Exercises

345 345 345


348 353 359 361 363 366 369 370 373 373

17 Fitting multilevel linear and generalized linear models in Bugs and R 375 17.1 Varying-intercept, varying-slope models 375 17.2 Varying intercepts and slopes with group-level predictors 379 17.3 Non-nested models 380 17.4 Multilevel logistic regression 381 17.5 Multilevel Poisson regression 382 17.6 Multilevel ordered categorical regression 383 17.7 Latent-data parameterizations of generalized linear models 384

CONTENTS 17.8 Bibliographic note 17.9 Exercises

xiii 385 385

18 Likelihood and Bayesian inference and computation 18.1 Least squares and maximum likelihood estimation 18.2 Uncertainty estimates using the likelihood surface 18.3 Bayesian inference for classical and multilevel regression 18.4 Gibbs sampler for multilevel linear models 18.5 Likelihood inference, Bayesian inference, and the Gibbs sampler: the case of censored data 18.6 Metropolis algorithm for more general Bayesian computation 18.7 Specifying a log posterior density, Gibbs sampler, and Metropolis algorithm in R 18.8 Bibliographic note 18.9 Exercises

387 387 390 392 397

19 Debugging and speeding convergence 19.1 Debugging and confidence building 19.2 General methods for reducing computational requirements 19.3 Simple linear transformations 19.4 Redundant parameters and intentionally nonidentifiable models 19.5 Parameter expansion: multiplicative redundant parameters 19.6 Using redundant parameters to create an informative prior distribution for multilevel variance parameters 19.7 Bibliographic note 19.8 Exercises

415 415 418 419 419 424

402 408 409 413 413

427 434 434

Part 3: From data collection to model understanding to model checking 435 20 Sample size and power calculations 20.1 Choices in the design of data collection 20.2 Classical power calculations: general principles, as illustrated by estimates of proportions 20.3 Classical power calculations for continuous outcomes 20.4 Multilevel power calculation for cluster sampling 20.5 Multilevel power calculation using fake-data simulation 20.6 Bibliographic note 20.7 Exercises

437 437

21 Understanding and summarizing the fitted models 21.1 Uncertainty and variability 21.2 Superpopulation and finite-population variances 21.3 Contrasts and comparisons of multilevel coefficients 21.4 Average predictive comparisons 21.5 R2 and explained variance 21.6 Summarizing the amount of partial pooling 21.7 Adding a predictor can increase the residual variance! 21.8 Multiple comparisons and statistical significance 21.9 Bibliographic note 21.10 Exercises

457 457 459 462 466 473 477 480 481 484 485

439 443 447 449 454 454



22 Analysis of variance 22.1 Classical analysis of variance 22.2 ANOVA and multilevel linear and generalized linear models 22.3 Summarizing multilevel models using ANOVA 22.4 Doing ANOVA using multilevel models 22.5 Adding predictors: analysis of covariance and contrast analysis 22.6 Modeling the variance parameters: a split-plot latin square 22.7 Bibliographic note 22.8 Exercises

487 487 490 492 494 496 498 501 501

23 Causal inference using multilevel models 23.1 Multilevel aspects of data collection 23.2 Estimating treatment effects in a multilevel observational study 23.3 Treatments applied at different levels 23.4 Instrumental variables and multilevel modeling 23.5 Bibliographic note 23.6 Exercises

503 503 506 507 509 512 512

24 Model checking and comparison 24.1 Principles of predictive checking 24.2 Example: a behavioral learning experiment 24.3 Model comparison and deviance 24.4 Bibliographic note 24.5 Exercises

513 513 515 524 526 527

25 Missing-data imputation 25.1 Missing-data mechanisms 25.2 Missing-data methods that discard data 25.3 Simple missing-data approaches that retain all the data 25.4 Random imputation of a single variable 25.5 Imputation of several missing variables 25.6 Model-based imputation 25.7 Combining inferences from multiple imputations 25.8 Bibliographic note 25.9 Exercises

529 530 531 532 533 539 540 542 542 543



A Six A.1 A.2 A.3 A.4 A.5 A.6

quick tips to improve your regression modeling 547 Fit many models 547 Do a little work to make your computations faster and more reliable 547 Graphing the relevant and not the irrelevant 548 Transformations 548 Consider all coefficients as potentially varying 549 Estimate causal inferences in a targeted way, not as a byproduct of a large regression 549

B Statistical graphics for research and presentation B.1 Reformulating a graph by focusing on comparisons B.2 Scatterplots B.3 Miscellaneous tips

551 552 553 559


Bibliographic note Exercises

xv 562 563

C Software C.1 Getting started with R, Bugs, and a text editor C.2 Fitting classical and multilevel regressions in R C.3 Fitting models in Bugs and R C.4 Fitting multilevel models using R, Stata, SAS, and other software C.5 Bibliographic note

565 565 565 567 568 573



Author index


Subject index


List of examples

Home radon

3, 36, 252, 279, 479

Forecasting elections

3, 144

State-level opinions from national polls

4, 301, 493

Police stops by ethnic group

5, 21, 112, 325

Public opinion on the death penalty


Testing for election fraud


Sex ratio of births

27, 137

Mothers’ education and children’s test scores

31, 55

Height and weight

41, 75

Beauty and teaching evaluations

51, 277

Height and earnings

53, 59, 140, 288



Yields of mesquite bushes


Political party identification over time


Income and voting

79, 107

Arsenic in drinking water

86, 128, 193

Death-sentencing appeals process

116, 320, 540

Ordered logistic model for storable votes

120, 331

Cockroaches in apartments

126, 161

Behavior of couples at risk for HIV

132, 166

Academy Award voting


Incremental cost-effectiveness ratio


Unemployment time series


The Electric Company TV show

174, 503

Hypothetical study of parenting quality as an intermediate outcome


Sesame Street TV show


Messy randomized experiment of cow feed


Incumbency and congressional elections



xviii Value of a statistical life Evaluating the Infant Health and Development Program

LIST OF EXAMPLES 197 201, 506

Ideology of congressmembers


Hypothetical randomized-encouragement study


Child support enforcement


Adolescent smoking


Rodents in apartments


Olympic judging


Time series of children’s CD4 counts

249, 277, 449

Flight simulator experiment

289, 464, 488

Latin square agricultural experiment

292, 497

Income and voting by state


Item-response models


Ideal-point modeling for the Supreme Court


Speed dating


Social networks


Regression with censored data


Educational testing experiments


Zinc for HIV-positive children


Cluster sampling of New York City residents


Value added of school teachers


Advanced Placement scores and college grades


Prison sentences


Magnetic fields and brain functioning


Analysis of variance for web connect times


Split-plot latin square


Educational-subsidy program in Mexican villages


Checking models of behavioral learning in dogs


Missing data in the Social Indicators Survey


Preface Aim of this book This book originated as lecture notes for a course in regression and multilevel modeling, offered by the statistics department at Columbia University and attended by graduate students and postdoctoral researchers in social sciences (political science, economics, psychology, education, business, social work, and public health) and statistics. The prerequisite is statistics up to and including an introduction to multiple regression. Advanced mathematics is not assumed—it is important to understand the linear model in regression, but it is not necessary to follow the matrix algebra in the derivation of least squares computations. It is useful to be familiar with exponents and logarithms, especially when working with generalized linear models. After completing Part 1 of this book, you should be able to fit classical linear and generalized linear regression models—and do more with these models than simply look at their coefficients and their statistical significance. Applied goals include causal inference, prediction, comparison, and data description. After completing Part 2, you should be able to fit regression models for multilevel data. Part 3 takes you from data collection, through model understanding (looking at a table of estimated coefficients is usually not enough), to model checking and missing data. The appendixes include some reference materials on key tips, statistical graphics, and software for model fitting. What you should be able to do after reading this book and working through the examples This text is structured through models and examples, with the intention that after each chapter you should have certain skills in fitting, understanding, and displaying models: • Part 1A: Fit, understand, and graph classical regressions and generalized linear models. – Chapter 3: Fit linear regressions and be able to interpret and display estimated coefficients. – Chapter 4: Build linear regression models by transforming and combining variables. – Chapter 5: Fit, understand, and display logistic regression models for binary data. – Chapter 6: Fit, understand, and display generalized linear models, including Poisson regression with overdispersion and ordered logit and probit models. • Part 1B: Use regression to learn about quantities of substantive interest (not just regression coefficients). – Chapter 7: Simulate probability models and uncertainty about inferences and predictions. xix


PREFACE – Chapter 8: Check model fits using fake-data simulation and predictive simulation. – Chapter 9: Understand assumptions underlying causal inference. Set up regressions for causal inference and understand the challenges that arise. – Chapter 10: Understand the assumptions underlying propensity score matching, instrumental variables, and other techniques to perform causal inference when simple regression is not enough. Be able to use these when appropriate.

• Part 2A: Understand and graph multilevel models. – Chapter 11: Understand multilevel data structures and models as generalizations of classical regression. – Chapter 12: Understand and graph simple varying-intercept regressions and interpret as partial-pooling estimates. – Chapter 13: Understand and graph multilevel linear models with varying intercepts and slopes, non-nested structures, and other complications. – Chapter 14: Understand and graph multilevel logistic models. – Chapter 15: Understand and graph multilevel overdispersed Poisson, ordered logit and probit, and other generalized linear models. • Part 2B: Fit multilevel models using the software packages R and Bugs. – Chapter 16: Fit varying-intercept regressions and understand the basics of Bugs. Check your programming using fake-data simulation. – Chapter 17: Use Bugs to fit various models from Part 2A. – Chapter 18: Understand Bayesian inference as a generalization of least squares and maximum likelihood. Use the Gibbs sampler to fit multilevel models. – Chapter 19: Use redundant parameterizations to speed the convergence of the Gibbs sampler. • Part 3: – Chapter 20: Perform sample size and power calculations for classical and hierarchical models: standard-error formulas for basic calculations and fake-data simulation for harder problems. – Chapter 21: Calculate and understand contrasts, explained variance, partial pooling coefficients, and other summaries of fitted multilevel models. – Chapter 22: Use the ideas of analysis of variance to summarize fitted multilevel models; use multilevel models to perform analysis of variance. – Chapter 23: Use multilevel models in causal inference. – Chapter 24: Check the fit of models using predictive simulation. – Chapter 25: Use regression to impute missing data in multivariate datasets. In summary, you should be able to fit, graph, and understand classical and multilevel linear and generalized linear models and to use these model fits to make predictions and inferences about quantities of interest, including causal treatment effects.



Data for the examples and homework assignments and other resources for teaching and learning The website∼gelman/arm/ contains datasets used in the examples and homework problems of the book, as well as sample computer code. The website also includes some tips for teaching regression and multilevel modeling through class participation rather than lecturing. We plan to update these tips based on feedback from instructors and students; please send your comments and suggestions to [email protected]. Outline of a course When teaching a course based on this book, we recommend starting with a selfcontained review of linear regression, logistic regression, and generalized linear models, focusing not on the mathematics but on understanding these methods and implementing them in a reasonable way. This is also a convenient way to introduce the statistical language R, which we use throughout for modeling, computation, and graphics. One thing that will probably be new to the reader is the use of random simulations to summarize inferences and predictions. We then introduce multilevel models in the simplest case of nested linear models, fitting in the Bayesian modeling language Bugs and examining the results in R. Key concepts covered at this point are partial pooling, variance components, prior distributions, identifiability, and the interpretation of regression coefficients at different levels of the hierarchy. We follow with non-nested models, multilevel logistic regression, and other multilevel generalized linear models. Next we detail the steps of fitting models in Bugs and give practical tips for reparameterizing a model to make it converge faster and additional tips on debugging. We also present a brief review of Bayesian inference and computation. Once the student is able to fit multilevel models, we move in the final weeks of the class to the final part of the book, which covers more advanced issues in data collection, model understanding, and model checking. As we show throughout, multilevel modeling fits into a view of statistics that unifies substantive modeling with accurate data fitting, and graphical methods are crucial both for seeing unanticipated features in the data and for understanding the implications of fitted models. Acknowledgments We thank the many students and colleagues who have helped us understand and implement these ideas. Most important have been Jouni Kerman, David Park, and Joe Bafumi for years of suggestions throughout this project, and for many insights into how to present this material to students. In addition, we thank Hal Stern and Gary King for discussions on the structure of this book; Chuanhai Liu, Xiao-Li Meng, Zaiying Huang, John Boscardin, Jouni Kerman, and Alan Zaslavsky for discussions about statistical computation; Iven Van Mechelen and Hans Berkhof for discussions about model checking; Iain Pardoe for discussions of average predictive effects and other summaries of regression models; Matt Salganik and Wendy McKelvey for suggestions on the presentation of sample size calculations; T. E. Raghunathan, Donald Rubin, Rajeev Dehejia, Michael Sobel, Guido Imbens, Samantha Cook, Ben Hansen, Dylan Small, and Ed Vytlacil for concepts of missing-data modeling and causal inference; Eric Loken for help in understanding identifiability in item-response models; Niall Bolger, Agustin



Calatroni, John Carlin, Rafael Guerrero-Preston, Reid Landes, Eduardo Leoni, and Dan Rabinowitz for code in Stata, SAS, and SPSS; Hans Skaug for code in AD Model Builder; Uwe Ligges, Sibylle Sturtz, Douglas Bates, Peter Dalgaard, Martyn Plummer, and Ravi Varadhan for help with multilevel modeling and general advice on R; and the students in Statistics / Political Science 4330 at Columbia for their invaluable feedback throughout. Collaborators on specific examples mentioned in this book include Phillip Price on the home radon study; Tom Little, David Park, Joe Bafumi, and Noah Kaplan on the models of opinion polls and political ideal points; Jane Waldfogel, Jeanne Brooks-Gunn, and Wen Han for the mothers and children’s intelligence data; Lex van Geen and Alex Pfaff on the arsenic in Bangladesh; Gary King on election forecasting; Jeffrey Fagan and Alex Kiss on the study of police stops; Tian Zheng and Matt Salganik on the social network analysis; John Carlin for the data on mesquite bushes and the adolescent-smoking study; Alessandra Casella and Tom Palfrey for the storable-votes study; Rahul Dodhia for the flight simulator example; Boris Shor, Joe Bafumi, and David Park on the voting and income study; Alan Edelman for the internet connections data; Donald Rubin for the Electric Company and educational-testing examples; Jeanne Brooks-Gunn and Jane Waldfogel for the mother and child IQ scores example and Infant Health and Development Program data; Nabila El-Bassel for the risky behavior data; Lenna Nepomnyaschy for the child support example; Howard Wainer with the Advanced Placement study; Iain Pardoe for the prison-sentencing example; James Liebman, Jeffrey Fagan, Valerie West, and Yves Chretien for the death-penalty study; Marcia Meyers, Julien Teitler, Irv Garfinkel, Marilyn Sinkowicz, and Sandra Garcia with the Social Indicators Study; Wendy McKelvey for the cockroach and rodent examples; Stephen Arpadi for the zinc and HIV study; Eric Verhoogen and Jan von der Goltz for the Progresa data; and Iven van Mechelen, Yuri Goegebeur, and Francis Tuerlincx on the stochastic learning models. These applied projects motivated many of the methodological ideas presented here, for example the display and interpretation of varying-intercept, varying-slope models from the analysis of income and voting (see Section 14.2), the constraints in the model of senators’ ideal points (see Section 14.3), and the difficulties with two-level interactions as revealed by the radon study (see Section 21.7). Much of the work in Section 5.7 and Chapter 21 on summarizing regression models was done in collaboration with Iain Pardoe. Many errors were found and improvements suggested by Brad Carlin, John Carlin, Samantha Cook, Caroline Rosenthal Gelman, Kosuke Imai, Jonathan Katz, Uwe Ligges, Wendy McKelvey, Jong-Hee Park, Martyn Plummer, Phillip Price, Song Qian, Dylan Small, Elizabeth Stuart, Sibylle Sturtz, and Alex Tabarrok. Brian MacDonald’s copyediting has saved us from much embarrassment, and we also thank Yu-Sung Su for typesetting help, Sarah Ryu for assistance with indexing, and Ed Parsons and his colleagues at Cambridge University Press for their help in putting this book together. We especially thank Bob O’Hara and Gregor Gorjanc for incredibly detailed and useful comments on the nearly completed manuscript. We also thank the developers of free software, especially R (for statistical computation and graphics) and Bugs (for Bayesian modeling), and also Emacs and LaTex (used in the writing of this book). We thank Columbia University for its collaborative environment for research and teaching, and the U.S. National Science Foundation for financial support. Above all, we thank our families for their love and support during the writing of this book.


Why? 1.1 What is multilevel regression modeling? Consider an educational study with data from students in many schools, predicting in each school the students’ grades y on a standardized test given their scores on a pre-test x and other information. A separate regression model can be fit within each school, and the parameters from these schools can themselves be modeled as depending on school characteristics (such as the socioeconomic status of the school’s neighborhood, whether the school is public or private, and so on). The student-level regression and the school-level regression here are the two levels of a multilevel model. In this example, a multilevel model can be expressed in (at least) three equivalent ways as a student-level regression: • A model in which the coefficients vary by school (thus, instead of a model such as y = α + βx + error, we have y = αj + βj x + error, where the subscripts j index schools), • A model with more than one variance component (student-level and school-level variation), • A regression with many predictors, including an indicator variable for each school in the data. More generally, we consider a multilevel model to be a regression (a linear or generalized linear model) in which the parameters—the regression coefficients—are given a probability model. This second-level model has parameters of its own—the hyperparameters of the model—which are also estimated from data. The two key parts of a multilevel model are varying coefficients, and a model for those varying coefficients (which can itself include group-level predictors). Classical regression can sometimes accommodate varying coefficients by using indicator variables. The feature that distinguishes multilevel models from classical regression is in the modeling of the variation between groups.

Models for regression coefficients To give a preview of our notation, we write the regression equations for two multilevel models. To keep notation simple, we assume just one student-level predictor x (for example, a pre-test score) and one school-level predictor u (for example, average parents’ incomes). Varying-intercept model. First we write the model in which the regressions have the same slope in each of the schools, and only the intercepts vary. We use the 1



notation i for individual students and j[i] for the school j containing student i:1 yi


αj[i] + βxi + i , for students i = 1, . . . , n



a + buj + ηj , for schools j = 1, . . . , J.


Here, xi and uj represent predictors at the student and school levels, respectively, and i and ηj are independent error terms at each of the two levels. The model can be written in several other equivalent ways, as we discuss in Section 12.5. The number of “data points” J (here, schools) in the higher-level regression is typically much less than n, the sample size of the lower-level model (for students in this example). Varying-intercept, varying-slope model. More complicated is the model where intercepts and slopes both can vary by school: yi


αj[i] + βj[i] xi + i , for students i = 1, . . . , n

αj βj

= =

a0 + b0 uj + ηj1 , for schools j = 1, . . . , J a1 + b1 uj + ηj2 , for schools j = 1, . . . , J.

Compared to model (1.1), this has twice as many vectors of varying coefficients (α, β), twice as many vectors of second-level coefficients (a, b), and potentially correlated second-level errors η1 , η2 . We will be able to handle these complications. Labels “Multilevel” or “hierarchical.” Multilevel models are also called hierarchical, for two different reasons: first, from the structure of the data (for example, students clustered within schools); and second, from the model itself, which has its own hierarchy, with the parameters of the within-school regressions at the bottom, controlled by the hyperparameters of the upper-level model. Later we shall consider non-nested models—for example, individual observations that are nested within states and years. Neither “state” nor “year” is above the other in a hierarchical sense. In this sort of example, we can consider individuals, states, and years to be three different levels without the requirement of a full ordering or hierarchy. More complex structures, such as three-level nesting (for example, students within schools within school districts) are also easy to handle within the general multilevel framework. Why we avoid the term “random effects.” Multilevel models are often known as random-effects or mixed-effects models. The regression coefficients that are being modeled are called random effects, in the sense that they are considered random outcomes of a process identified with the model that is predicting them. In contrast, fixed effects correspond either to parameters that do not vary (for example, fitting the same regresslon line for each of the schools) or to parameters that vary but are not modeled themselves (for example, fitting a least squares regression model with various predictors, including indicators for the schools). A mixed-effects model includes both fixed and random effects; for example, in model (1.1), the varying intercepts αj have a group-level model, but β is fixed and does not vary by group. 1

The model can also be written as yij = αj + βxij + ij , where yij is the measurement from student i in school j. We prefer using the single sequence i to index all students (and j[i] to label schools) because this fits in better with our multilevel modeling framework with data and models at the individual and group levels. The data are yi because they can exist without reference to the groupings, and we prefer to include information about the groupings as numerical data— that is, the index variable j[i]—rather than through reordering the data through subscripting. We discuss the structure of the data and models further in Chapter 11.



Fixed effects can be viewed as special cases of random effects, in which the higherlevel variance (in model (1.1), this would be σα2 ) is set to 0 or ∞. Hence, in our framework, all regression parameters are “random,” and the term “multilevel” is all-encompassing. As we discuss on page 245, we find the terms “fixed,” “random,” and “mixed” effects to be confusing and often misleading, and so we avoid their use. 1.2 Some examples from our own research Multilevel modeling can be applied to just about any problem. Just to give a feel of the ways it can be used, we give here a few examples from our applied work. Combining information for local decisions: home radon measurement and remediation Radon is a carcinogen—a naturally occurring radioactive gas whose decay products are also radioactive—known to cause lung cancer in high concentrations and estimated to cause several thousand lung cancer deaths per year in the United States. The distribution of radon levels in U.S. homes varies greatly, with some houses having dangerously high concentrations. In order to identify the areas with high radon exposures, the Environmental Protection Agency coordinated radon measurements in a random sample of more than 80,000 houses throughout the country. To simplify the problem somewhat, our goal in analyzing these data was to estimate the distribution of radon levels in each of the approximately 3000 counties in the United States, so that homeowners could make decisions about measuring or remediating the radon in their houses based on the best available knowledge of local conditions. For the purpose of this analysis, the data were structured hierarchically: houses within counties. If we were to analyze multiple measurements within houses, there would be a three-level hierarchy of measurements, houses, and counties. In performing the analysis, we had an important predictor—the floor on which the measurement was taken, either basement or first floor; radon comes from underground and can enter more easily when a house is built into the ground. We also had an important county-level predictor—a measurement of soil uranium that was available at the county level. We fit a model of the form (1.1), where yi is the logarithm of the radon measurement in house i, x is the floor of the measurement (that is, 0 for basement and 1 for first floor), and u is the uranium measurement at the county level. The errors i in the first line of (1.1) represent “within-county variation,” which in this case includes measurement error, natural variation in radon levels within a house over time, and variation between houses (beyond what is explained by the floor of measurement). The errors ηj in the second line represent variation between counties, beyond what is explained by the county-level uranium predictor. The hierarchical model allows us to fit a regression model to the individual measurements while accounting for systematic unexplained variation among the 3000 counties. We return to this example in Chapter 12. Modeling correlations: forecasting presidential elections It is of practical interest to politicians and theoretical interest to political scientists that the outcomes of elections can be forecast with reasonable accuracy given information available months ahead of time. To understand this better, we set up a



model to forecast presidential elections. Our predicted outcomes were the Democratic Party’s share of the two-party vote in each state in each of the 11 elections from 1948 through 1988, yielding 511 data points (the analysis excluded states that were won by third parties), and we had various predictors, including the performance of the Democrats in the previous election, measures of state-level and national economic trends, and national opinion polls up to two months before the election. We set up our forecasting model two months before the 1992 presidential election and used it to make predictions for the 50 states. Predictions obtained using classical regression are reasonable, but when the model is evaluated historically (fitting to all but one election and then using the model to predict that election, then repeating this for the different past elections), the associated predictive intervals turn out to be too narrow: that is, the predictions are not as accurate as claimed by the model. Fewer than 50% of the predictions fall in the 50% predictive intervals, and fewer than 95% are inside the 95% intervals. The problem is that the 511 original data points are structured, and the state-level errors are correlated. It is overly optimistic to say that we have 511 independent data points. Instead, we model yi = β0 + Xi1 β1 + Xi2 β2 + · · · + Xik βk + ηt[i] + δr[i],t[i] + i , for i = 1, . . . , n, (1.2) where t[i] is a indicator for time (election year), and r[i] is an indicator for the region of the country (Northeast, Midwest, South, or West), and n = 511 is the number of state-years used to fit the model. For each election year, ηt is a nationwide error and the δr,t ’s are four independent regional errors. The error terms must then be given distributions. As usual, the default is the normal distribution, which for this model we express as ηt

N(0, ση2 ), for t = 1, . . . , 11


N(0, σδ2 ), for r = 1, . . . , 4; t = 1, . . . , 11


N(0, σ2 ), for i = 1, . . . , 511.


In the multilevel model, all the parameters β, ση , σδ , σ are estimated from the data. We can then make a prediction by simulating the election outcome in the 50 states in the next election year, t = 12: yi = β0 + Xi1 β1 + Xi2 β2 + · · · + Xik βk + η12 + δr[i],12 + i , for i = n+1, . . . , n+50. To define the predictive distribution of these 50 outcomes, we need the point predictors Xi β = β0 + Xi1 β1 + Xi2 β2 + · · · + Xik βk and the state-level errors  as before, but we also need a new national error η12 and four new regional errors δr,12 , which we simulate from the distributions (1.3). The variation from these gives a more realistic statement of prediction uncertainties. Small-area estimation: state-level opinions from national polls In a micro-level version of election forecasting, it is possible to predict the political opinions of individual voters given demographic information and where they live. Here the data sources are opinion polls rather than elections. For example, we analyzed the data from seven CBS News polls from the 10 days immediately preceding the 1988 U.S. presidential election. For each survey respondent i, we label yi = 1 if he or she preferred George Bush (the Republican candidate), 0 if he or she preferred Michael Dukakis (the Democrat). We excluded respondents who preferred others or had no opinion, leaving a sample size n of



about 6000. We then fit the model, Pr(yi = 1) = logit−1 (Xi β), where X included 85 predictors: • A constant term • An indicator for “female” • An indicator for “black” • An indicator for “female and black” • 4 indicators for age categories (18–29, 30–44, 45–64, and 65+) • 4 indicators for education categories (less than high school, high school, some college, college graduate) • 16 indicators for age × education • 51 indicators for states (including the District of Columbia) • 5 indicators for regions (Northeast, Midwest, South, West, and D.C.) • The Republican share of the vote for president in the state in the previous election. In classical regression, it would be unwise to fit this many predictors because the estimates will be unreliable, especially for small states. In addition, it would be necessary to leave predictors out of each batch of indicators (the 4 age categories, the 4 education categories, the 16 age × education interactions, the 51 states, and the 5 regions) to avoid collinearity. With a multilevel model, the coefficients for each batch of indicators are fit to a probability distribution, and it is possible to include all the predictors in the model. We return to this example in Section 14.1. Social science modeling: police stops by ethnic group with variation across precincts There have been complaints in New York City and elsewhere that the police harass members of ethnic minority groups. In 1999 the New York State Attorney General’s Office instigated a study of the New York City police department’s “stop and frisk” policy: the lawful practice of “temporarily detaining, questioning, and, at times, searching civilians on the street.” The police have a policy of keeping records on every stop and frisk, and this information was collated for all stops (about 175,000 in total) over a 15-month period in 1998–1999. We analyzed these data to see to what extent different ethnic groups were stopped by the police. We focused on blacks (African Americans), hispanics (Latinos), and whites (European Americans). We excluded others (about 4% of the stops) because of sensitivity to ambiguities in classifications. The ethnic categories were as recorded by the police making the stops. It was found that blacks and hispanics represented 50% and 33% of the stops, respectively, despite constituting only 26% and 24%, respectively, of the population of the city. An arguably more relevant baseline comparison, however, is to the number of crimes committed by members of each ethnic group. Data on actual crimes are not available, of course, so as a proxy we used the number of arrests within New York City in 1997 as recorded by the Division of Criminal Justice Services (DCJS) of New York State. We used these numbers to represent the frequency of crimes that the police might suspect were committed by members of each group. When compared in that way, the ratio of stops to previous DCJS arrests was 1.24 for



whites, 1.53 for blacks, and 1.72 for hispanics—the minority groups still appeared to be stopped disproportionately often. These ratios are suspect too, however, because they average over the whole city. Suppose the police make more stops in high-crime areas but treat the different ethnic groups equally within any locality. Then the citywide ratios could show strong differences between ethnic groups even if stops are entirely determined by location rather than ethnicity. In order to separate these two kinds of predictors, we performed a multilevel analysis using the city’s 75 precincts. For each ethnic group e = 1, 2, 3 and precinct p = 1, . . . , 75, we model the number of stops yep using an overdispersed Poisson regression. The exponentiated coefficients from this model represent relative rates of stops compared to arrests for the different ethnic groups, after controlling for precinct. We return to this example in Section 15.1. 1.3 Motivations for multilevel modeling Multilevel models can be used for a variety of inferential goals including causal inference, prediction, and descriptive modeling. Learning about treatment effects that vary One of the basic goals of regression analysis is estimating treatment effects—how does y change when some x is varied, with all other inputs held constant? In many applications, it is not an overall effect of x that is of interest, but how this effect varies in the population. In classical statistics we can study this variation using interactions: for example, a particular educational innovation may be more effective for girls than for boys, or more effective for students who expressed more interest in school in a pre-test measurement. Multilevel models also allow us to study effects that vary by group, for example an intervention that is more effective in some schools than others (perhaps because of unmeasured school-level factors such as teacher morale). In classical regression, estimates of varying effects can be noisy, especially when there are few observations per group; multilevel modeling allows us to estimate these interactions to the extent supported by the data. Using all the data to perform inferences for groups with small sample size A related problem arises when we are trying to estimate some group-level quantity, perhaps a local treatment effect or maybe simply a group-level average (as in the small-area estimation example on page 4). Classical estimation just using the local information can be essentially useless if the sample size is small in the group. At the other extreme, a classical regression ignoring group indicators can be misleading in ignoring group-level variation. Multilevel modeling allows the estimation of group averages and group-level effects, compromising between the overly noisy within-group estimate and the oversimplified regression estimate that ignores group indicators. Prediction Regression models are commonly used for predicting outcomes for new cases. But what if the data vary by group? Then we can make predictions for new units in existing groups or in new groups. The latter is difficult to do in classical regression:



if a model ignores group effects, it will tend to understate the error in predictions for new groups. But a classical regression that includes group effects does not have any automatic way of getting predictions for a new group. A natural attack on the problem is a two-stage regression, first including group indicators and then fitting a regression of estimated group effects on group-level predictors. One can then forecast for a new group, with the group effect predicted from the group-level model, and then the observations predicted from the unit-level model. However, if sample sizes are small in some groups, it can be difficult or even impossible to fit such a two-stage model classically, and fully accounting for the uncertainty at both levels leads directly to a multilevel model. Analysis of structured data Some datasets are collected with an inherent multilevel structure, for example, students within schools, patients within hospitals, or data from cluster sampling. Statistical theory—whether sampling-theory or Bayesian—says that inference should include the factors used in the design of data collection. As we shall see, multilevel modeling is a direct way to include indicators for clusters at all levels of a design, without being overwhelmed with the problems of overfitting that arise from applying least squares or maximum likelihood to problems with large numbers of parameters. More efficient inference for regression parameters Data often arrive with multilevel structure (students within schools and grades, laboratory assays on plates, elections in districts within states, and so forth). Even simple cross-sectional data (for example, a random sample survey of 1000 Americans) can typically be placed within a larger multilevel context (for example, an annual series of such surveys). The traditional alternatives to multilevel modeling are complete pooling, in which differences between groups are ignored, and no pooling, in which data from different sources are analyzed separately. As we shall discuss in detail throughout the book, both these approaches have problems: no pooling ignores information and can give unacceptably variable inferences, and complete pooling suppresses variation that can be important or even the main goal of a study. The extreme alternatives can in fact be useful as preliminary estimates, but ultimately we prefer the partial pooling that comes out of a multilevel analysis. Including predictors at two different levels In the radon example described in Section 1.2, we have outcome measurements at the individual level and predictors at the individual and county levels. How can this information be put together? One possibility is simply to run a classical regression with predictors at both levels. But this does not correct for differences between counties beyond what is included in the predictors. Another approach would be to augment this model with indicators (dummy variables) for the counties. But in a classical regression it is not possible to include county-level indicators as well along with county-level predictors—the predictors would become collinear (see the end of Section 4.5 for a discussion of collinearity and nonidentifiability in this context). Another approach is to fit the model with county indicators but without the county-level predictors, and then to fit a second model. This is possible but limited because it relies on the classical regression estimates of the coefficients for those



county-level indicators—and if the data are sparse within counties, these estimates won’t be very good. Another possibility in the classical framework would be to fit separate models in each group, but this is not possible unless the sample size is large in each group. The multilevel model provides a coherent model that simultaneously incorporates both individual- and group-level models. Getting the right standard error: accurately accounting for uncertainty in prediction and estimation Another motivation for multilevel modeling is for predictions, for example, when forecasting state-by-state outcomes of U.S. presidential elections, as described in Section 1.2. To get an accurate measure of predictive uncertainty, one must account for correlation of the outcome between states in a given election year. Multilevel modeling is a convenient way to do this. For certain kinds of predictions, multilevel models are essential. For example, consider a model of test scores for students within schools. In classical regression, school-level variability might be modeled by including an indicator variable for each school. In this framework though, it is impossible to make a prediction for a new student in a new school, because there would not be an indicator for this new school in the model. This prediction problem is handled seamlessly using multilevel models. 1.4 Distinctive features of this book The topics and methods covered in this book overlap with many other textbooks on regression, multilevel modeling, and applied statistics. We differ from most other books in these areas in the following ways: • We present methods and software that allow the reader to fit complicated, linear or nonlinear, nested or non-nested models. We emphasize the use of the statistical software packages R and Bugs and provide code for many examples as well as methods such as redundant parameterization that speed computation and lead to new modeling ideas. • We include a wide range of examples, almost all from our own applied research. The statistical methods are thus motivated in the best way, as successful practical tools. • Most books define regression in terms of matrix operations. We avoid much of this matrix algebra for the simple reason that it is now done automatically by computers. We are more interested in understanding the “forward,” or predictive, matrix multiplication Xβ than the more complicated inferential formula (X t X)−1 X t y. The latter computation and its generalizations are important but can be done out of sight of the user. For details of the underlying matrix algebra, we refer readers to the regression textbooks listed in Section 3.8. • We try as much as possible to display regression results graphically rather than through tables. Here we apply ideas such as those presented in the books by Ramsey and Schafer (2001) for classical regression and Kreft and De Leeuw (1998) for multilevel models. We consider graphical display of model estimates to be not just a useful teaching method but also a necessary tool in applied research. Statistical texts commonly recommend graphical displays for model diagnostics. These can be very useful, and we refer readers to texts such as Cook and Weisberg



(1999) for more on this topic—but here we are emphasizing graphical displays of the fitted models themselves. It is our experience that, even when a model fits data well, we have difficulty understanding it if all we do is look at tables of regression coefficients. • We consider multilevel modeling as generally applicable to structured data, not limited to clustered data, panel data, or nested designs. For example, in a random-digit-dialed survey of the United States, one can, and should, use multilevel models if one is interested in estimating differences among states or demographic subgroups—even if no multilevel structure is in the survey design. Ultimately, you have to learn these methods by doing it yourself, and this chapter is intended to make things easier by recounting stories about how we learned this by doing it ourselves. But we warn you ahead of time that we include more of our successes than our failures. Costs and benefits of our approach Doing statistics as described in this book is not easy. The difficulties are not mathematical but rather conceptual and computational. For classical regressions and generalized linear models, the actual fitting is easy (as illustrated in Part 1), but programming effort is still required to graph the results relevantly and to simulate predictions and replicated data. When we move to multilevel modeling, the fitting itself gets much more complicated (see Part 2B), and displaying and checking the models require correspondingly more work. Our emphasis on R and Bugs means that an initial effort is required simply to learn and use the software. Also, compared to usual treatments of multilevel models, we describe a wider variety of modeling options for the researcher so that more decisions will need to be made. A simpler alternative is to use classical regression and generalized linear modeling where possible—this can be done in R or, essentially equivalently, in Stata, SAS, SPSS, and various other software—and then, when multilevel modeling is really needed, to use functions that adapt classical regression to handle simple multilevel models. Such functions, which can be run with only a little more effort than simple regression fitting, exist in many standard statistical packages. Compared to these easier-to-use programs, our approach has several advantages: • We can fit a greater variety of models. The modular structure of Bugs allows us to add complexity where needed to fit data and study patterns of interest. • By working with simulations (rather than simply point estimates of parameters), we can directly capture inferential uncertainty and propagate it into predictions (as discussed in Chapter 7 and applied throughout the book). We can directly obtain inference for quantities other than regression coefficients and variance parameters. • R gives us flexibility to display inferences and data flexibly. We recognize, however, that other software and approaches may be useful too, either as starting points or to check results. Section C.4 describes briefly how to fit multilevel models in several other popular statistical software packages. 1.5 Computing We perform computer analyses using the freely available software R and Bugs. Appendix C gives instructions on obtaining and using these programs. Here we outline how these programs fit into our overall strategy for data analysis.



Our general approach to statistical computing In any statistical analysis, we like to be able to directly manipulate the data, model, and inferences. We just about never know the right thing to do ahead of time, so we have to spend much of our effort examining and cleaning the data, fitting many different models, summarizing the inferences from the models in different ways, and then going back and figuring how to expand the model to allow new data to be included in the analysis. It is important, then, to be able to select subsets of the data, to graph whatever aspect of the data might be of interest, and to be able to compute numerical summaries and fit simple models easily. All this can be done within R—you will have to put some initial effort into learning the language, but it will pay off later. You will almost always need to try many different models for any problem: not just different subsets of predictor variables as in linear regression, and not just minor changes such as fitting a logit or probit model, but entirely different formulations of the model—different ways of relating observed inputs to outcomes. This is especially true when using new and unfamiliar tools such as multilevel models. In Bugs, we can easily alter the internal structure of the models we are fitting, in a way that cannot easily be done with other statistical software. Finally, our analyses are almost never simply summarized by a set of parameter estimates and standard errors. As we illustrate throughout, we need to look carefully at our inferences to see if they make sense and to understand the operation of the model, and we usually need to postprocess the parameter estimates to get predictions or generalizations to new settings. These inference manipulations are similar to data manipulations, and we do them in R to have maximum flexibility. Model fitting in Part 1 Part 1 of this book uses the R software for three general tasks: (1) fitting classical linear and generalized linear models, (2) graphing data and estimated models, and (3) using simulation to propagate uncertainty in inferences and predictions (see Sections 7.1–7.2 for more on this). Model fitting in Parts 2 and 3 When we move to multilevel modeling, we begin by fitting directly in R; however, for more complicated models we move to Bugs, which has a general language for writing statistical models. We call Bugs from R and continue to use R for preprocessing of data, graphical display of data and inferences, and simulation-based prediction and model checking. R and S Our favorite all-around statistics software is R, which is a free open-source version of S, a program developed in the 1970s and 1980s at Bell Laboratories. S is also available commercially as S-Plus. We shall refer to R throughout, but other versions of S generally do the same things. R is excellent for graphics, classical statistical modeling (most relevant here are the lm() and glm() functions for linear and generalized linear models), and various nonparametric methods. As we discuss in Part 2, the lmer() function provides quick fits in R for many multilevel models. Other packages such as MCMCpack exist to fit specific classes of models in R, and other such programs are in development.



Beyond the specific models that can be fit by these packages, R is fully programmable and can thus fit any model, if enough programming is done. It is possible to link R to Fortran or C to write faster programs. R also can choke on large datasets (which is one reason we automatically “thin” large Bugs outputs before reading into R; see Section 16.9). Bugs Bugs (an acronym for Bayesian Inference using Gibbs Sampling) is a program developed by statisticians at the Medical Research Council in Cambridge, England. As of this writing, the most powerful versions available are WinBugs 1.4 and OpenBugs. In this book, when we say “Bugs,” we are referring to WinBugs 1.4; however, the code should also work (perhaps with some modification) under OpenBugs or future implementations. The Bugs modeling language has a modular form that allows the user to put together all sorts of Bayesian models, including most of the multilevel models currently fit in social science applications. The two volumes of online examples in Bugs give some indication of the possibilities—in fact, it is common practice to write a Bugs script by starting with an example with similar features and then altering it step by step to fit the particular problem at hand. The key advantage of Bugs is its generality in setting up models; its main disadvantage is that it is slow and can get stuck with large datasets. These problems can be somewhat reduced in practice by randomly sampling from the full data to create a smaller dataset for preliminary modeling and debugging, saving the full data until you are clear on what model you want to fit. (This is simply a computational trick and should not be confused with cross-validation, a statistical method in which a procedure is applied to a subset of the data and then checked using the rest of the data.) Bugs does not always use the most efficient simulation algorithms, and currently its most powerful version runs only in Windows, which in practice reduces the ability to implement long computations in time-share with other processes. When fitting complicated models, we set up the data in R, fit models in Bugs, then go back to R for further statistical analysis using the fitted models. Some models cannot be fit in Bugs. For these we illustrate in Section 15.3 a new R package under development called Umacs (universal Markov chain sampler). Umacs is less automatic than Bugs and requires more knowledge of the algebra of Bayesian inference. Other software Some statistical software has been designed specifically for fitting multilevel models, notably MLWin and HLM. It is also possible to fit some multilevel models in R, Stata, SAS, and other general-purpose statistical software, but without the flexibility of modeling in Bugs. The models allowed by these programs are less general than available in Bugs; however, they are generally faster and can handle larger datasets. We discuss these packages further in Section C.4. Data and code for examples Data and computer code for the examples and exercises in the book can be downloaded at the website∼gelman/arm/, which also includes other supporting materials for this book.


Concepts and methods from basic probability and statistics Simple methods from introductory statistics have three important roles in regression and multilevel modeling. First, simple probability distributions are the building blocks for elaborate models. Second, multilevel models are generalizations of classical complete-pooling and no-pooling estimates, and so it is important to understand where these classical estimates come from. Third, it is often useful in practice to construct quick confidence intervals and hypothesis tests for small parts of a problem—before fitting an elaborate model, or in understanding the output from such a model. This chapter provides a quick review of some of these methods. 2.1 Probability distributions A probability distribution corresponds to an urn with a potentially infinite number of balls inside. When a ball is drawn at random, the “random variable” is what is written on this ball. Areas of application of probability distributions include: • Distributions of data (for example, heights of men, heights of women, heights of adults), for which we use the notation yi , i = 1, . . . , n. • Distributions of parameter values, for which we use the notation θj , j = 1, . . . , J, or other Greek letters such as α, β, γ. We shall see many of these with the multilevel models in Part 2 of the book. For now, consider a regression model (for example, predicting students’ grades from pre-test scores) fit separately in each of several schools. The coefficients of the separate regressions can be modeled as following a distribution, which can be estimated from data. • Distributions of error terms, which we write as i , i = 1, . . . , n—or, for grouplevel errors, ηj , j = 1, . . . , J. A “distribution” is how we describe a set of objects that are not identified, or when the identification gives no information. For example, the heights of a set of unnamed persons have a distribution, as contrasted with the heights of a particular set of your friends. The basic way that distributions are used in statistical modeling is to start by fitting a distribution to data y, then get predictors X and model y given X with errors . Further information in X can change the distribution of the ’s (typically, by reducing their variance). Distributions are often thought of as data summaries, but in the regression context they are more commonly applied to ’s. Normal distribution; means and variances The Central Limit Theorem of probability states that the sum of many small independent random variables will be a random variable with an approximate normal 13


BASIC PROBABILITY AND STATISTICS heights of women (normal distribution)

heights of all adults (not a normal distribution)

Figure 2.1 (a) Heights of women (which approximately follow a normal distribution, as predicted from the Central Limit Theorem), and (b) heights of all adults in the United States (which have the form of a mixture of two normal distributions, one for each sex).

n distribution. If we write this summation of independent components as z = i=1 zi , then the mean and variance of zare the sums of the means and variances of the n n 2 2 zi ’s: μz = i=1 μzi and σz = i=1 σzi . We write this as z ∼ N(μz , σz ). n The Central Limit Theorem holds in practice—that is, i=1 zi actually follows an approximate normal distribution—if the individual σz2i ’s are small compared to the total variance σz2 . For example, the heights of women in the United States follow an approximate normal distribution. The Central Limit Theorem applies here because height is affected by many small additive factors. In contrast, the distribution of heights of all adults in the United States is not so close to normality. The Central Limit Theorem does not apply here because there is a single large factor—sex—that represents much of the total variation. See Figure 2.1. Linear transformations. Linearly transformed normal distributions are still normal. For example, if y are men’s heights in inches (with mean 69.1 and standard deviation 2.9), then 2.54y are their heights in centimeters (with mean 2.54 · 69 = 175 and standard deviation 2.54 · 2.9 = 7.4). For an example of a slightly more complicated calculation, suppose we take independent samples of 100 men and 100 women and compute the difference between the average heights of the men and the average heights of the women. This difference will  be normally distributed with mean 69.1 − 63.7 = 5.4 and standard deviation 2.92 /100 + 2.72 /100 = 0.4 (see Exercise 2.4). Means and variances of sums of correlated random variables. If x and y are ranσx , σy , and correlation ρ, dom variables with means μx , μy , standard deviations 

then x + y has mean μx + μy and standard deviation σx2 + σy2 + 2ρσx σy . More generally, the weighted sum ax + by has mean aμx + bμy , and its standard deviation  is a2 σx2 + b2 σy2 + 2abρσx σy . From this we can derive, for example, that x−y has  mean μx − μy and standard deviation σx2 + σy2 − 2ρσx σy . Estimated regression coefficients. Estimated regression coefficients are themselves linear combinations of data (formally, the estimate (X t X)−1 X t y is a linear combination of the data values y), and so the Central Limit Theorem again applies, in this case implying that, for large samples, estimated regression coefficients are approximately normally distributed. Similar arguments apply to estimates from logistic regression and other generalized linear models, and for maximum likelihood

PROBABILITY DISTRIBUTIONS log weights of men (normal distribution)

15 weights of men (lognormal distribution)

Figure 2.2 Weights of men (which approximately follow a lognormal distribution, as predicted from the Central Limit Theorem from combining several small multiplicative factors), plotted on the logarithmic and original scales.

estimation in general (see Section 18.1), for well-behaved models with large sample sizes.

Multivariate normal distribution More generally, a random vector z = (z1 , . . . , zK ) with a K-dimensional multivariate normal distribution with a vector mean μ and a covariance matrix Σ is written as z ∼ N(μ, Σ). The diagonal elements of Σ are the variances of the K individual random variables zk ; thus, we can write zk ∼ N(μk , Σkk ). The off-diagonal elements of Σ are the covariances between different elements of z, defined so that the cor relation between zj and zk is Σjk / Σjj Σkk . The multivariate normal distribution sometimes arises when modeling data, but in this book we encounter it in models for vectors of regression coefficients. Approximate normal distribution of regression coefficients and other parameter estimates. The least squares estimate of a vector of linear regression coefficients β is βˆ = (X t X)−1 X t y (see Section 3.4), which, when viewed as a function of data y (considering the predictors X as constants), is a linear combination of the data. Using the Central Limit Theorem, it can be shown that the distribution of βˆ will be approximately multivariate normal if the sample size is large. We describe in Chapter 7 how we use this distribution to summarize uncertainty in regression inferences.

Lognormal distribution It is often helpful to model all-positive random variables on the logarithmic scale. For example, the logarithms of men’s weights (in pounds) have an approximate normal distribution with mean 5.13 and standard deviation 0.17. Figure 2.2 shows the distributions of log weights and weights among men in the United States. The exponential of the mean and standard deviations of log weights are called the geometric mean and geometric standard deviation of the weights; in this example, they are 169 pounds and 1.18, respectively. When working with this lognormal distribution, we sometimes want to compute the mean and standard deviation on the original scale; these are exp(μ + 12 σ 2 ) and exp(μ + 12 σ 2 ) exp(σ 2 ) − 1, respectively. For the men’s weights example, these come to 171 pounds and 29 pounds.



Binomial distribution If you take 20 shots in basketball, and each has 0.3 probability of succeeding, and if these shots are independent of each other (that is, success in one shot does not increase or decrease the probability of success in any other shot), then the number of shots that succeed is said to have a binomial distribution with n = 20 and p = 0.3, for which we use the notation y ∼ Binomial(n, p). As can be seen even in this simple example, the binomial model is typically only an approximation with real data, where in multiple trials, the probability p of success can vary, and for which outcomes can be correlated. Nonetheless, the binomial model is a useful starting point for modeling such data. And in some settings—most notably, independent sampling with Yes/No responses—the binomial model generally is appropriate, or very close to appropriate. Poisson distribution The Poisson distribution is used for count data such as the number of cases of cancer in a county, or the number of hits to a website during a particular hour, or the number of persons named Michael whom you know: • If a county has a population of 100,000, and the average rate of a particular cancer is 45.2 per million persons per year, then the number of cancers in this county could be modeled as Poisson with expectation 4.52. • If hits are coming at random, with an average rate of 380 per hour, then the number of hits in any particular hour could be modeled as Poisson with expectation 380. • If you know approximately 1000 persons, and 1% of all persons in the population are named Michael, and you are as likely to know Michaels as anyone else, then the number of Michaels you know could be modeled as Poisson with expectation 10. As with the binomial distribution, the Poisson model is almost always an idealization, with the first example ignoring systematic differences among counties, the second ignoring clustering or burstiness of the hits, and the third ignoring factors such as sex and age that distinguish Michaels, on average, from the general population. Again, however, the Poisson distribution is a starting point—as long as its fit to data is checked. The model can be expanded to account for “overdispersion” in data, as we discuss in the context of Figure 2.5 on page 21. 2.2 Statistical inference Sampling and measurement error models Statistical inference is used to learn from incomplete or imperfect data. There are two standard paradigms for inference: • In the sampling model, we are interested in learning some characteristics of a population (for example, the mean and standard deviation of the heights of all women in the United States), which we must estimate from a sample, or subset, of that population. • In the measurement error model, we are interested in learning aspects of some underlying pattern or law (for example, the parameters a and b in the model



y = a + bx), but the data are measured with error (most simply, y = a + bx + , although one can also consider models with measurement error in x). These two paradigms are different: the sampling model makes no reference to measurements, and the measurement model can apply even when complete data are observed. In practice, however, we often combine the two approaches when creating a statistical model. For example, consider a regression model predicting students’ grades from pretest scores and other background variables. There is typically a sampling aspect to such a study, which is performed on some set of students with the goal of generalizing to a larger population. The model also includes measurement error, at least implicitly, because a student’s test score is only an imperfect measure of his or her abilities. This book follows the usual approach of setting up regression models in the measurement-error framework (y = a + bx + ), with the sampling interpretation implicit in that the errors i , . . . , n can be considered as a random sample from a distribution (for example, N(0, σ 2 )) that represents a hypothetical “superpopulation.” We consider these issues in more detail in Chapter 21; at this point, we raise this issue only to clarify the connection between probability distributions (which are typically modeled as draws from an urn, or distribution, as described at the beginning of Section 2.1) and the measurement error models used in regression. Parameters and estimation The goal of statistical inference for the sorts of parametric models that we use is to estimate underlying parameters and summarize our uncertainty in these estimates. We discuss inference more formally in Chapter 18; here it is enough to say that we typically understand a fitted model by plugging in estimates of its parameters, and then we consider the uncertainty in the parameter estimates when assessing how much we actually have learned from a given dataset. Standard errors The standard error is the standard deviation of the parameter estimate and gives us a sense of our uncertainty about a parameter and can be used in constructing confidence intervals, as we discuss in the next section. When estimating the mean of an infinite population, given a simple random sample of size n, the standard error √ is σ/ n, where σ is the standard deviation of the measurements in the population. Standard errors for proportions Consider a survey of size n with y Yes responses and n − y No responses. The estimated proportion of the population who would  answer Yes to this survey is pˆ = y/n, and the standard error of this estimate is pˆ(1 − pˆ)/n. This estimate and standard error are usually reasonable unless y = 0 or n− y = 0, in which case the resulting standard error estimate of zero is misleading.1 1

A reasonable quick correction when y or n−y is near zero is to use the estimate pˆ = (y+1)/(n+2) p with standard error pˆ(1 − pˆ)/n; see Agresti and Coull (1998).



2.3 Classical confidence intervals Confidence intervals from the normal and t distributions The usual 95% confidence interval for large samples based on the normal distribution is an estimate ±2 standard errors. Also from the normal distribution, an estimate ±1 standard error is a 68% interval, and an estimate ± 2/3 of a standard error is a 50% interval. A 50% interval is particularly easy to interpret since the true value should be as likely to be inside as outside the interval. A 95% interval is about three times as wide as a 50% interval. The t distribution can be used to correct for uncertainty in the estimation of the standard error. Continuous data. For example, suppose an object is weighed five times, with measurements y = 35, 34, 38, 35, 37, which have an average value of 35.8 and a standard deviation of 1.6. In R, we can create the 50% and 95% t intervals (based on 4 degrees of freedom) as follows: R code