Skip to content

rcpch/rcpchgrowth-python

Repository files navigation

RCPCHGrowth Python library

Calculations for children's measurements against UK and international growth references.

PyPI version License: AGPL v3 Binder Codespaces

For AI/LLM agents working on this repository: Please read AGENTS.md for project context, development workflow, and testing strategy.

Please go to https://growth.rcpch.ac.uk/products/python-library/ for full documentation.

Issues can be raised here https://github.com/rcpch/rcpchgrowth-python/issues


Installation

Docker

If you want to avoid setting up docker environments, there are shortcut scripts the create a dockerized environment with RCPCHGrowth already installed.

This will generate a container which will launch some Jupyter notebooks in a browser and allow local dev (with hot reload).

Convenience Scripts

The s/ folder contains helper scripts for common development tasks:

Script Purpose
s/up Start the development container
s/down Stop the development container
s/test Run pytest (auto-starts container if needed; use --running flag for already-running container)
s/notebook Launch JupyterLab in your browser
s/shell Open an interactive bash shell in the container
s/python Launch Python REPL in the container

Quick start:

# Start the container and launch notebooks
s/notebook

# Run tests (in a separate terminal)
s/test

# Or run tests in an already-running container
s/test --running

# Run the UK-WHO integration suite
s/test rcpchgrowth/tests/test_uk_who.py -v

# Reference WHO test datasets and under-2 gold-standard rationale
# (192 deterministic anthro-generated cases)
# See rcpchgrowth/tests/who_test_data/README.md

# Stop when done
s/down

Minimal installation (without docker) assuming you have a python virtual env setup

pip install rcpchgrowth

With notebook & package dependencies:

pip install "rcpchgrowth[notebook]"

The notebook extra currently pulls in: pandas, matplotlib, jupyterlab, ipykernel.

Data handling / privacy

Data handling & privacy
Never commit identifiable patient data.
• Keep raw identifiable data outside version control (secure, access‑controlled).
• De‑identify before analysis (remove names, NHS numbers, full DOB; date‑shift if required).
• Do not push raw exports to forks, PRs or gists.
• Use ResearchTemplate.ipynb for generating de‑identified derived outputs.
If in doubt, stop and seek local information governance guidance.

Contributing

See issues list and please open discussions before large changes.


Copyright © Royal College of Paediatrics and Child Health

About

A python package to produce calculations for all growth issues

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors