Skip to main content

A utility for searching across the full icd9cms (2015) diagnosis hierarchy

Project description

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, ...

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

icd9cms-0.2.0.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

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

icd9cms-0.2.0-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file icd9cms-0.2.0.tar.gz.

File metadata

  • Download URL: icd9cms-0.2.0.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for icd9cms-0.2.0.tar.gz
Algorithm Hash digest
SHA256 a2f3fd08c6177c6d1797141631f4a0a5f2ee82bd0598c1ff58c1925520951313
MD5 e7ff0d7e6c99b95bfe80d870462e67c6
BLAKE2b-256 5780018e495cbc073537f1b2d05bc6d46f9d3a28234c040b128cd294a634c492

See more details on using hashes here.

File details

Details for the file icd9cms-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: icd9cms-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3
  • Uploaded using 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

File hashes

Hashes for icd9cms-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eb4c90722ff78d59a94d28bfb391528045fb708bbecb729d8e532e93a873bf50
MD5 a99aa93bcf6ef513c5f68a65dbdb024a
BLAKE2b-256 fde7d9e82c8bb9d1d1149c46acdbd0f56bc038fe401b48e5263bd8231961079f

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