Anthropometric Birthday Cards

[This article was first published on Theory meets practice..., and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.


We visualize children reference populations for height, weight and body mass index by plotting percentiles of the population as a function of age. Besides the epidemiological interest in these anthropometric curves, they have dual-use potential for reproducible birthday cards.

Creative Commons License This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. The R-markdown source code of this blog is available under a GNU General Public License (GPL v3) license from GitHub.


Percentiles of a reference population at a given age are often used to assess under- and overweight of children. As an example, the WHO defines obesity for children under 5 years of age when the weight-for-height of a child is greater than 3 standard deviations above WHO Child Growth Standards median for that age]( (see also the WHO R package anthro.

In order to estimate these percentiles, data from a sample of the reference population is often fitted using flexible regression models such as GAMLSS (Rigby and Stasinopoulos 2005) or quantile regression (Koenker 2005). This allows for a flexible modelling of the percentiles as smooth functions of age (Fenske et al. 2013). The reference curves used in Germany are based on the Box-Cox Cole and Green distribution (Kromeyer-Hauschild et al. 2001) (aka. the LMS method). The childsds R package contains an implementation of these curves as data(kro.ref). Furthermore, the package contains similar reference curves for several other countries as well as the WHO reference.

In what follows, we will re-purpose the package as work-horse for generating individualized birthday cards for children.


Quantiles of the reference population are obtained with the childsds::make_percentile_tab function. As an example, let’s get the 5th, 50th and 95th percentile of the height distribution for the population of girls in Germany aged 0 and 4 years, respectively.

  ref = kro.ref, item = "height", age=c(0,4),
  perc=c(5,50,95), FALSE
) %>% filter(sex == "female") 
##      sex age perc_05_0 perc_50_0 perc_95_0
## 1 female   0  47.39498   51.1112  54.82742
## 2 female   4  96.33650  103.6051 110.87370

The main result of this short blog post is an Rmd file, which contains a visualization of an imaginary child’s growth trajectory: Albert B. Cook born on 2018-06-11. The data of Albert are stored in a CSV file. We show the trajectories for height, weight and BMI and compare to 5 quantiles of the German reference population, i.e. the 2.5%, 5%, 50%, 95% and 97.5% quantile. The resulting visualization looks as follows:

Albert B. Cook

Let’s look at how Albert relates to the population of children in Germany1 as implemented in the childsds R package2.


Albert’s height of 108 cm at age 4.0 years corresponds to the 81.4% quantile among boys in Germany of that age.


Albert’s weight of 19,100 g at age 4.0 years corresponds to the 82.6% quantile among boys in Germany of that age.


Albert’s BMI of 16.4 kg/m² at age 4.0 years corresponds to the 73.3% quantile among boys in Germany of that age.

The Rmd file can be obtained from GitHub and serves as a template for creating html based congratulation cards in response to news of newborn (which usually are annotated with birth height and birth weight) or to track the growth of your own kids.


Percentile curves for longitudinal trajectories in populations can also be used in very different contexts than anthropometry. As an example consider the development of your solve time for the 3x3x3 Rubik’s cube as a function of time since first WCA competition.


Fenske, N., L. Fahrmeir, P. Rzehak, and M. Höhle. 2013. “Boosting Structured Additive Quantile Regression for Longitudinal Childhood Obesity Data.” Int J Biostat 9 (1): 1–18.
Koenker, Roger. 2005. Quantile Regression. Cambridge University Press.
Kromeyer-Hauschild, K., M. Wabitsch, D. Kunze, F. Geller, H. C. Geiß, V. Hesse, A. von Hippel, et al. 2001. “Perzentile für Den Body-Mass-Index für Das Kindes- Und Jugendalter Unter Heranziehung Verschiedener Deutscher Stichproben.” Monatsschrift Kinderheilkunde 149 (8): 807–18.
Rigby, R. A., and D. M. Stasinopoulos. 2005. “Generalized Additive Models for Location, Scale and Shape (with Discussion).” Applied Statistics 54: 1–38.

  1. According to Kromeyer-Hauschild, K., Wabitsch, M., Kunze, D. et al. Perzentile für den Body-mass-Index für das Kindes- und Jugendalter unter Heranziehung verschiedener deutscher Stichproben. Monatsschr Kinderheilkd 149, 807–818 (2001).↩︎

  2. Vogel M (2022). childsds: Data and Methods Around Reference Values in Pediatrics. R package version 0.8.0,
To leave a comment for the author, please follow the link and comment on their blog: Theory meets practice.... offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)