C8351 - POPULATION DATA SCIENCE

Academic Year 2026/2027

  • Docente: Nicola Barban
  • Credits: 10
  • SSD: STAT-03/A
  • Language: English
  • Teaching Mode: In-person learning (entirely or partially)
  • Campus: Bologna
  • Corso: Second cycle degree programme (LM) in Statistical Sciences (cod. 6810)

Learning outcomes

The course trains students to apply data science approaches to the study of human populations. Students will learn to analyse fertility, mortality, and migration, and to understand how social, economic, political, and environmental factors shape population change. The course covers traditional demographic data (censuses, registers, surveys) as well as new digital data sources and digital traces. Students will use R or Python to manage, clean, integrate, and analyse large-scale datasets. The course includes methods for text-as-data (e.g., news articles, social media, historical texts) to study demographic discourse and behaviour. Geographical data and spatial analysis tools are introduced to explore territorial patterns and inequalities. Students learn principles of reproducibility and Open Science, with emphasis on transparent workflows and code sharing. By the end of the course, students will be able to interpret results critically and communicate findings effectively. The course prepares students to design and implement research projects in population, social change, and public policy.

Course contents

The course is organized in five parts, covering the full workflow of population research: knowing populations and their data, describing them, modelling and predicting, explaining population change, and following lives over time.

Part I — Knowing populations and their data. Introduction to Population Data Science. Demographic measures: rates, standardization, life tables, fertility measures, the Lexis diagram; excess mortality as a running case study. Traditional data sources (censuses, population registers, vital statistics, surveys) and new digital sources (digital traces, social media), with attention to bias and representativeness. Reproducible data wrangling in R: harmonization and integration of multiple sources, record linkage, administrative data. Open Science practices: version control, literate programming, FAIR data, research ethics and data protection.

Part II — Describing populations. Data visualization for population science: principles of visual communication, population pyramids, Lexis surfaces, visualizing uncertainty. Mapping populations: spatial data, census geographies, thematic cartography, gridded population data.

Part III — Modelling and predicting populations. Generalized linear models for demographic outcomes (binary outcomes, counts and rates); age-period-cohort analysis; multilevel models for contextual effects; spatial dependence. Matrix demography: population projections with the cohort-component method (scenarios, communicating uncertainty) and formal models of kinship. Population applications of text-as-data  and of machine learning. Methodological foundations of text and machine learning methods are covered in other course units; this course focuses on their application to population questions.

Part IV — Explaining population change. Causal thinking with population data: descriptive versus causal claims, potential outcomes, directed acyclic graphs, confounding and selection; natural experiments in population history and an overview of quasi-experimental designs through demographic examples.

Part V — Following lives over time. Longitudinal population data: panel data models (within/between variation, fixed effects); event history analysis (censoring, Kaplan-Meier, Cox and discrete-time models); sequence analysis of life courses (dissimilarity measures, clustering, trajectory typologies).

Throughout the course, students develop an original research project on a population question, carried out in a reproducible repository.

Readings/Bibliography

Reference text for demographic methods:

Wachter, Essential Demographic Methods, Harvard University Press.

All other materials — lecture slides  and week-specific readings (journal articles and book chapters) — will be distributed during the course on Virtuale.

Teaching methods

Lectures alternate with hands-on sessions of live coding in R on students' own laptops, using real population data. Students develop a research project with structured feedback during the course.

Office hours

See the website of Nicola Barban