Germán Rodríguez
Statistics and Population Princeton University

Welcome to the home page of Germán Rodríguez, Senior Research Demographer, Emeritus, Princeton University. This website collects a number of teaching materials that students and others have found useful through the years.

Courses and Tutorials

You will find here notes, handouts and computing logs for four courses:

Generalized Linear Models, covering regression models for continuous, binary, count, and survival data, and closing with an introduction to models for longitudinal data.

Multilevel Models, a half-term course on models for multilevel data, such as data on children, their families, and the communities where they live, including random intercept and random slope models.

Survival Analysis, a half-term course on time-to-event or survival data, including parametric models, Cox proportional hazard models, competing risks, and frailty models of multivariate survival.

Demographic Methods, a core course on demographic methods, covering rates and standardization, life tables, nuptiality, fertility rates and birth intervals, tempo effects, population projections, and stable populations.

You will also find a pair of introductions to statistical software:

Stata Tutorial, a quick overview of a popular statistical package with a vast array of up-to-date statistical techniques, and excellent facilities for producing publication-quality tables and graphs. Stata is fast, easy to use and programable.

Introducing R, an introduction to R, a powerful language and environment for statistical computing and graphics. We provide tips for getting started, discuss reading and examining data, and then focus on R as a tool for fitting linear and generalized linear models.

These six sections can always be reached through the navigation bar at the very top of every page.

The Computing Logs

I am a strong believer in reproducible research, and have written a Stata command called markstat to combine Markdown annotations with Stata code and output to produce dynamic documents and presentations.

The command owes its inspiration to rmarkdown from the R world. The Stata Tutorial was written using markstat and Introducing R was written using rmarkdown.

A nice feature of markstat is that it can include both Stata and R code. The computing logs for the four courses listed above were written in markstat. The GLM course has separate Stata and R versions, while the other three courses use tabs to view the Stata or R versions. The source code for all these scripts is on GitHub.

The command has its own website at

Biographic Remarks

I received my Ph.D. in Biostatistics from the University of North Carolina at Chapel Hill, and before that obtained a Master's degree in Social Science from the University of Chicago. My undergraduate work in my native Chile was in Psychology, where I discovered my love for statistics while studying psychometrics with Erika Himmel. A job as a statistical assistant to Anibal Faundes in a fertility survey led to a life-long interest in population.

After graduation I worked for seven years at the World Fertility Survey (WFS) in London, England, once described as the largest social science project ever undertaken. I then spent five years in the Statistics Department at the Universidad Católica de Chile. In 1987 I joined the Office of Population Research at Princeton University, where I worked for thirty two years, transitioning to emeritus status in 2019. I have been lucky to interact with wonderful colleagues in all three institutions.

More extensive biographic remarks may be found in a nice write-up by a very kind colleague, who wrote them as part of the Population Association of America (PAA) "honor a colleague" fund-raiser.

Research Interests

My main research interest has been statistical demography, the application of statistical modeling techniques to the study of human population, with emphasis on fertility and health.

My more technical work focused on multilevel models. A list of my publications in this area can be found in the research section here, including work on assessing estimation procedures in multilevel models for binary data, and a chapter in the Handbook of Multilevel Analysis edited by Jan de Leeuw and Erik Meijer. More recently I did some work on tempo effects in fertility and mortality, noting connections with accelerated failure time models.

You can see a list of my publications in Google Scholar.