PCNtoolkit is an open-source Python package for Normative Modelling of neuroimaging data.
With version 1.X.X (June 2025), PCNtoolkit was rewritten to be object-oriented, making it more extendable and maintainable. As a result, version 0.X.X is not compatible with 1.X.X and is no longer actively maintained.
pip install pcntoolkitfrom pcntoolkit import load_fcon1000, BLR, NormativeModel
fcon1000 = load_fcon1000()
train, test = fcon1000.train_test_split()
# Create a BLR model with heteroskedastic noise
model = NormativeModel(BLR(heteroskedastic=True),
inscaler='standardize',
outscaler='standardize')
model.fit_predict(train, test)The best place to learn Normative Modelling and the PCNtoolkit is our website documentation.
Feel free to ask your questions and engage in discussions with the community on the NeuroStars online forum. Please add the tag pcntoolkit to your post.
Contributions are always welcome! To start see our website contributing guidelines.
You can find more in depth guidelines in our GitHub Wiki.
This software has received funding from the:
- Wellcome Trust (Digital Innovator award 'BRAINCHART', 215698/Z/19/Z),
- European Research Council (ERC grant 'MENTALPRECISION', 101001118),
- Dutch Research Council (NWO VIDI grants 016.156.415, 864.12.003 and NWO Gravitation grant 024.001.006),
- Dutch Sectorplan 'AI and data-driven Innovation'.
PCNtoolkit is released under the GPL-3.0-only license.