Skip to main content

Tools to convert BICAMS scores to z scores

Project description

BICAMSZ: a package for z-transformation of BICAMS

magic command: pip install BICAMSZ

Table of contents

  1. About the creators
  2. Project explanation
  3. Considerations
  4. Deliverables
  5. Required Data
  6. Code explanation

Introduction

AIMS - VUB

First of all, thank you very much for your interest in using our project on behalf of the Artificial Intelligence and Modelling in clinical Sciences (AIMS) lab, part of the Vrije Universiteit Brussel (VUB). We aim to contribute maximally to optimal clinical care in neurodegenerative disorders, with a special focus on Multiple Sclerosis, by performing relevant and advanced modelling on neurophysiological and brain imaging data. Moreover, in light of the prosper of the field and general understanding of our research, we do efforts to contribute to open, reproducible and transparant science by sharing code and actively practicing science communication on our AIMS website.

The project

For a thorough understanding, please visit our streamlit application!

In short, transforming test scores to z-scores by correcting for age, gender and education allows comparison of cognitive scores between subjects. The following phases can be distinguished:

  1. Scaling of the raw scores
  2. Predicting which score should normally be obtained by the subject according to their age, sex and education level.
  3. Obtain z-score: subtract the predicted score (2) from the scaled score (1), and divide by the residual error of the regression model

Important considerations

Both the conversion table per test, used for the scaling of raw scores, and the fitting of the regression-line to yield the weights for the features within the regression model (age, age^2, sex, education level) rely on data from a sample of 97 Belgian, Dutch-speaking healthy controls. The demographics of this population (especially age and education, 43.52 ± 12.69 and 14.69 ± 1.61 (mean ± std) respectively) should be taken into account when converting a z-score for a subject. We highlight to be especially careful when calculating z-scores when a participant's characteristics have extreme values (either very low or very high) on either age or education level.

Furthermore, testing conditions for this paper were very strict. E.g. for the SDMT, patients were not allowed to keep track of their progression on the test paper by using their fingers to indicate the symbol that needed to be converted into a digit. Please make sure that every subtest of BICAMS was administered with careful attention for correct execution. Moreover, only the Dutch version of CVLT-II is eligible for the z-normalization within this project.

Deliverables

With this code, you can easily transform cognitive scores on BICAMS to z-scores.

Required data

All required:

  • age: years (integer)
  • sex:
    • 1 = Male
    • 2 = Female
  • education (years of education):
    • 6 = Primary school
    • 12 = High school
    • 13 = Professional education
    • 15 = Bachelor
    • 17 = Master
    • 21 = Doctorate One of the scores below:
  • sdmt: raw sdmt score
  • bvmt: raw bvmt score
  • cvlt: raw cvlt score

Code explanation

All code is present in functions.py

  • data_check: performs a check on your data for impossible values
  • normalization_pipeline: entire pipeline. Uses the following internal functions:
    • _get_conversion_table: more info below
    • _get_expected_score
    • _raw_to_scaled
    • _to_z_score
    • _impaired_or_not

_get_conversion_table: Every conversion table consists of the following columns:

  • scaled_score: Categorical variable, the scaled score that accords with a raw score within the following interval between lower and upper bound:
  • lower bound: lower bound of the raw score to yield a certain scaled score
  • upper bound: upper bound of the raw score to yield a certain scaled score

Thus: scaled_score accords with lower_bound <= raw_score <= upper_bound
Note: Also 'equal to' belongs to the interval between the lower and upper bounds!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

BICAMSZ-0.1.0.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

BICAMSZ-0.1.0-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file BICAMSZ-0.1.0.tar.gz.

File metadata

  • Download URL: BICAMSZ-0.1.0.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.7.2

File hashes

Hashes for BICAMSZ-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ccf727bf4d26027cd10754cb151aa8fc30de84a7d5a2a0a53c6bd8650a573e00
MD5 736213c2d6cbfddeca645d2b690f7f5a
BLAKE2b-256 b9e4dc5ecf9e6bd0c6cdd85680e5646fd84869b46d3e43757b230c8487292f10

See more details on using hashes here.

File details

Details for the file BICAMSZ-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: BICAMSZ-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.7.2

File hashes

Hashes for BICAMSZ-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f84ea72d0252911b1ab4608fa93227217d8923b41cf545c7edbac66d67e7ddee
MD5 7d6fb08a31041420208e57a4df14ff82
BLAKE2b-256 20efe159eb10ea3426601a500130f32da3071902a33a9352a8bb427e0845d4f6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page