Skip to content

Machine-Learning-for-Medical-Language/ctakes-client-py

Repository files navigation

Purpose: Extract Medical Concepts from Physician Notes

This package simplifies communication with cTAKES NLP servers which produce matches with UMLS Concepts.

  • Clinical Text and Knowledge Extraction System (cTAKES)
  • Unified Medical Language System (UMLS)

Quickstart

Clinical text fragment or entire physician note.

physician_note = 'Chief Complaint: Patient c/o cough, denies fever, recent COVID test negative. Denies smoking.'
output = await ctakesclient.client.post(physician_note)

Note that ctakesclient uses an async API. If your code is not async, you can simply wrap calls in asyncio.run():

output = asyncio.run(ctakesclient.client.post(physician_note))

Output

This client parses responses into lists of MatchText and UmlsConcept.

CtakesJSON(output)

list_match() -> List[MatchText]

list_concept() -> List[UmlsConcept]

list_sign_symptom() -> List[MatchText]

list_disease_disorder() -> List[MatchText]

list_medication() -> List[MatchText]

list_procedure() -> List[MatchText]

list_anatomical_site() -> List[MatchText]

MatchText: Physician Notes

MatchText(s) are the character positions in the physician note where a UmlsConcept was found.

MatchText::= begin end text polarity UmlsConcept+

MatchText: Polarity

UMLS Concept

UMLS Vocabulary

UMLS Semantic Types and Groups

You can browse the list of UMLS Semantic Types at the National Library of Medicine.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •