Skip to main content

ICD9 Diagnostic Code Helper Utility

A helper utility that offers fast lookup of ICD9-CM V32 (2015) codes, complete with the entire hierarchy.

Why does this utility exist?

ICD9-CMS extends the original (already outdated) ICD9 code standard.

The billable ICD9 codes are available here. However, these flat files lack the non-billable hierarchical relations between codes and the intermediate code descriptions.

For example, the above linked file only contains codes 0010, 0011 and 0019, and not the higher level codes 001 and 001-009.

001-009: ntestinal Infectious Diseases
    001:Cholera
        0010:Cholera d/t vib cholerae:Cholera due to vibrio cholerae
        0011:Cholera d/t vib el tor:Cholera due to vibrio cholerae el tor 
        0019:Cholera NOS:Cholera, unspecified
    ...

This intermediate non-billable nodes have been scraped from http://www.icd9data.com/2015/Volume1/default.htm parsed into the hierarchy and merged with the above using cms.gov billable codes. The hierarchy have been saved to disk.

To install

$ pip install icd9cms

To use

>>> from icd9cms.icd9 import search
>>>search('001')
001:Cholera:None
>>> # Codes can be searched for with or without the implied '.'  
>>> search('001.0') == search('0010')
True
>>> # The root node is under the code 'n/a' or None
>>> search('n/a')
n/a:root:None

Parent / Child / Siblings Relations

>>> code = search('001')
>>> code.parent
001-009:Intestinal Infectious Diseases:None
>>> code.children
>>> code.children
[0010:Cholera d/t vib cholerae:Cholera due to vibrio cholerae, 0011:Cholera d/t vib el tor:Cholera due to vibrio cholerae el tor, 0019:Cholera NOS:Cholera, unspecified]
>>> code.siblings
[002:Typhoid and paratyphoid fevers:None, 003:Other salmonella infections:None, 004:Shigellosis:None, 005:Other food poisoning (bacterial):None, 006:Amebiasis:None, 007:Other protozoal intestinal diseases:None, 008:Intestinal infections due to other organisms:None, 009:Ill-defined intestinal infections:None]

Collect Billable (Leaf) codes / Is a Code Billable (leaf)

>>> code = search('0010')
>>> code.is_leaf
True
>>> leaf_codes = search('001-009').leaves
>>> list(leaf_codes)
[0010:Cholera d/t vib cholerae:Cholera due to vibrio cholerae, 0011:Cholera d/t vib el tor:Cholera due to vibrio cholerae el tor, 0019:Cholera NOS:Cholera, unspecified, 0020:Typhoid fever:Typhoid fever, 0021:Paratyphoid fever a:Paratyphoid fever A, 0022:Paratyphoid fever b:Paratyphoid fever B, 0023:Paratyphoid fever c:Paratyphoid fever C, 0029:Paratyphoid fever NOS:Paratyphoid fever, unspecified, 00320:Local salmonella inf NOS:Localized salmonella infection, unspecified, 00321:Salmonella meningitis:Salmonella meningitis, 00322:Salmonella pneumonia:Salmonella pneumonia, ...

Release files for icd9cms 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for icd9cms 0.2.1
File Size Uploaded
icd9cms-0.2.1.tar.gz 1.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for icd9cms 0.2.1
File Interpreter ABI Platform
icd9cms-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 2.4 MB

Release files / icd9cms-0.2.1.tar.gz

Download URL icd9cms-0.2.1.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
8601753fe88d16245346246093bce7d8ff8b9a3e0046998b543797ae5fddfb3e
BLAKE2b-256 checksum
How to use checksums
fd9344d5bfc66aadd59dc9f30f1a00992f88eac9d0f66cf3ee8dfd16df61daae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

Release files / icd9cms-0.2.1-py3-none-any.whl

Download URL icd9cms-0.2.1-py3-none-any.whl
Size 1.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
10f47d0308bc218c85436a55b31a10442fc42aeef17b8dac02fc86c91f65843d
BLAKE2b-256 checksum
How to use checksums
89a3e3c70a341e312fef30000618e7cc7ae1f3893f65a4a2f3f5dd73280e05c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page