Skip to content

A rule-based clinical decision support demo built with Python, SQLAlchemy, and Jupyter Notebook. Loads a JSON symptom database into SQLite, applies a scoring formula (Frequency × Evoking Strength), and returns the top probable diagnoses in descending order.

Notifications You must be signed in to change notification settings

AsianaHolloway/AssignmentDifferentialDiagnostics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 

Repository files navigation

Low-Level-Differential-Diagnostic-System

A rule-based clinical decision support demo built with Python, SQLAlchemy, and Jupyter Notebook. Loads a JSON symptom database into SQLite, applies a scoring formula (Frequency × Evoking Strength), and returns the top probable diagnoses in descending order.

Low-Level Clinical Differential Diagnosis System (Educational)

Open In Colab

A simplified clinical decision support system using Python, SQLAlchemy, and Jupyter Notebook.
Loads a JSON symptom database into SQLite, applies the scoring formula:

Score = Frequency × EvokingStrength

and returns the top-N probable diagnoses in descending order.

⚠️ Educational demo only — not a clinical tool.


Key Features

  • JSON → SQLAlchemy ORMSQLite pipeline
  • Many-to-many mapping (symptoms ↔ conditions)
  • Transparent rule-based scoring (no ML “black box”)
  • Outputs top-N probable diagnoses for patient symptoms

Quick Start (Colab)

Click the badge to run in the cloud (no install):

Open In Colab


Example Output

Input symptoms:
["Fever", "Cough", "Headache", "Shortness of Breath"]

Screenshot

Example Output

Project Purpose

This project demonstrates how a simple rule-based clinical decision support system can be built by combining structured data, databases, and algorithmic scoring. The goal was to replicate the workflow of mapping symptoms to conditions and producing ranked outputs — similar to how decision support modules in EHR systems work.

What I Learned

  • How to design and query a many-to-many schema using SQLAlchemy and SQLite
  • How to transform JSON clinical data into a normalized relational structure
  • How to implement and test a rule-based scoring function (Frequency × EvokingStrength)
  • How to present results in Pandas DataFrames and visualize outputs for interpretation

Real-World Applications

  • Shows transferable skills in data modeling, database management, and algorithm design
  • Reflects how informatics professionals build clinical decision support (CDS) prototypes
  • Demonstrates practical use of Python + SQL for healthcare data workflows

About

A rule-based clinical decision support demo built with Python, SQLAlchemy, and Jupyter Notebook. Loads a JSON symptom database into SQLite, applies a scoring formula (Frequency × Evoking Strength), and returns the top probable diagnoses in descending order.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published