Code Monkey home page Code Monkey logo

sts-calculator's Introduction

Cardiac Surgery Risk Calculator

The Society for Thoracic Surgery maintains an online Adult Cardiac Surgery Risk Calculator which can be used to estimate the risk of mortality and other complications in cardiac surgery patients. While the only required variables are procedure type, age, and sex, supplying additional information about the patient and procedure increases the accuracy of the score.

Although the calculator is designed for manual input of data fields on the webpage, the underlying API can be used to automate the calculation of the STS scores. This document describes this API in more detail.

API Details

URL: http://riskcalc.sts.org/stswebriskcalc/v1/calculate/stsall
Method: POST
Content type: application/json

Example curl command:

curl -H "Content-Type: application/json" -X POST -d '{"age":"70","procid":"1","gender":"Male","weightkg":"50","heightcm":"100","hct":"","wbc":"","platelets":"","creatlst":"","medadpidis":"","pctstenlmain":"","hdef":"","pctstenproxlad":""}' http://riskcalc.sts.org/stswebriskcalc/v1/calculate/stsall

and the response:

{
  "predmort": 0.00394,
  "predmm": 0.04148,
  "preddeep": 0.00115,
  "pred14d": 0.01323,
  "predstro": 0.00287,
  "predvent": 0.02133,
  "predrenf": 0.00638,
  "predreop": 0.0269,
  "pred6d": 0.7656
}

which corresponds to the likelihoods of:

  • Mortality
  • Morbidity or Mortality
  • DSW Infection
  • Long Length of Stay
  • Permanent Stroke
  • Prolonged Ventilation
  • Renal Failure
  • Reoperation
  • Short Length of Stay

Calculator Inputs

Procedure Type .json
Isolated CAB (CAB Only) { procid: "1" }
Isolated AVR (AV Replacement) { procid: "2" }
Isolated MVR (MV Replacement Only) { procid: "3" }
AVR + CAB (AV Replacement + CAB) { procid: "4" }
MVR + CAB (MV Replacement + CAB) { procid: "5" }
MV Repair { procid: "7" }
MV Repair + CAB { procid: "8" }
Patient Characteristics .json
Age ∈ [1, 110] { age: 50 }
Gender: Male { gender: "Male" }
Gender: Female { gender: "Female" }
Weight (kg) ∈ [10, 250] { weightkg: 100 }
Height (cm) ∈ [20, 251] { heightcm: 100 }
Race .json
Race Documented: Yes { racedocumented: "Yes" }
Race Documented: No { racedocumented: "No" }
Race Documented: Patient declined to disclose { racedocumented: "Patient declined to disclose" }
Race - Black / African American: Yes { raceblack: "Yes" }
Race - Black / African American: No { raceblack: "No" }
Race - Asian: Yes { raceasian: "Yes" }
Race - Asian: No { raceasian: "No" }
Race - American Indian / Alaskan Native: Yes { racenativeam: "Yes" }
Race - American Indian / Alaskan Native: No { racenativeam: "No" }
Race - Native Hawaiian / Pacific Islander: Yes { racnativepacific: "Yes" }
Race - Native Hawaiian / Pacific Islander: No { racnativepacific: "No" }
Hispanic or Latino or Spanish Ethnicity: Yes { ethnicity: "Yes" }
Hispanic or Latino or Spanish Ethnicity: No { ethnicity: "No" }
Hispanic or Latino or Spanish Ethnicity: Not Documented { ethnicity: "Not Documented" }
Financial Class .json
Primary Payor: None / self { payorprim: "None / self" }
Primary Payor: Medicare { payorprim: "Medicare" }
Primary Payor: Medicaid { payorprim: "Medicaid" }
Primary Payor: Military Health { payorprim: "Military Health" }
Primary Payor: Indian Health Service { payorprim: "Indian Health Service" }
Primary Payor: Correctional Facility { payorprim: "Correctional Facility" }
Primary Payor: State Specific Plan { payorprim: "State Specific Plan" }
Primary Payor: Other Government Insurance { payorprim: "Other Government Insurance" }
Primary Payor: Commercial Health Insurance { payorprim: "Commercial Health Insurance" }
Primary Payor: Health Maintenance Organization { payorprim: "Health Maintenance Organization" }
Primary Payor: Non-U.S. Plan { payorprim: "Non-U.S. Plan" }
Primary Payor: Charitable Care/Foundation Funding { payorprim: "Charitable Care/Foundation Funding" }
Secondary (Supplemental) Payor: None / self { payorsecond: "None / self" }
Labs .json
Hematocrit ∈ [1.00, 99.99] { hct: 45 }
WBC Count ∈ [0.10, 99.99] { wbc: 4.5 }
Platelet Count ∈ [1000, 900000] { platelets: 150000 }
Last Creatinine Level ∈ [0.10, 30.00] { creatlst: 1.0 }
RF .json
RF-Renal Fail-Dialysis: Yes { dialysis: "Yes" }
RF-Renal Fail-Dialysis: No { dialysis: "No" }
RF-Renal Fail-Dialysis: Unknown { dialysis: "Unknown" }
RF-Last Creat Level ∈ [0.1, 30] { creatlst: 20 }
Comorbidities .json
Dialysis { dialysis: "Yes" }
Hypertension { hypertn: "Yes" }
Immunocompromise Present { immsupp: "Yes" }
Historical diagnoses .json
Peripheral Artery Disease { pvd: "Yes" }
Cerebrovascular Disease { cvd: "Yes" }
Cerebrovascular Disease: CVD TIA { cvdtia: "Yes" }
Cerebrovascular Disease: Prior CVA { cva: "Yes" }
Cerebrovascular Disease: Prior CVA-When: <= 30 days { cvawhen: "<= 30 days" }
Cerebrovascular Disease: Prior CVA-When: > 30 days { cvawhen: "> 30 days" }
Cerebrovascular Disease: Severity of stenosis on the right carotid artery documented { cvdstenrt: "50% to 79%" }
Cerebrovascular Disease: Severity of stenosis on the right carotid artery documented { cvdstenrt: "80% to 99%" }
Cerebrovascular Disease: Severity of stenosis on the right carotid artery documented { cvdstenrt: "100 %" }
Cerebrovascular Disease: Severity of stenosis on the right carotid artery documented { cvdstenrt: "Not documented" }
Cerebrovascular Disease: Severity of stenosis on the left carotid artery documented { cvdstenlft: "50% to 79%" }
Cerebrovascular Disease: History of previous carotid artery surgery and/or stenting { cvdpcarsurg: "Yes" }
Status .json
Elective { status: "Elective" }
Urgent { status: "Urgent" }
Emergent { status: "Emergent" }
Emergent Salvage { status: "Emergent Salvage" }
Hemo Data-EF (ejection fraction) .json
Hemo Data-EF Done: No { hdefd: "No" }
Hemo Data-EF Done: Yes { hdefd: "Yes" }
Hemo Data-EF Value { hdef: 10 }
Heart Failure within 2 weeks .json
Yes { chf: "Yes" }
No { chf: "No" }
Unknown { chf: "Unknown" }
Cardiac Presentation/Symptoms - At Time Of This Admission .json
Stable Angina { cardsymptimeofadm: "Stable Angina" }
Unstable Angina { cardsymptimeofadm: "Unstable Angina" }
Angina equivalent { cardsymptimeofadm: "Angina equivalent" }
Non-ST Elevation MI (Non-STEMI) { cardsymptimeofadm: "Non-ST Elevation MI (Non-STEMI)" }
ST Elevation MI (STEMI) { cardsymptimeofadm: "ST Elevation MI (STEMI)" }
Other { cardsymptimeofadm: "Other" }
No Symptoms { cardsymptimeofadm: "No Symptoms" }
Cardiac Symptoms - At Time Of Surgery .json
Stable Angina { cardsymptimeofsurg: "Stable Angina" }
Unstable Angina { cardsymptimeofsurg: "Unstable Angina" }
Angina equivalent { cardsymptimeofsurg: "Angina equivalent" }
Non-ST Elevation MI (Non-STEMI) { cardsymptimeofsurg: "Non-ST Elevation MI (Non-STEMI)" }
ST Elevation MI (STEMI) { cardsymptimeofsurg: "ST Elevation MI (STEMI)" }
Other { cardsymptimeofsurg: "Other" }
No Symptoms { cardsymptimeofsurg: "No Symptoms" }
MI .json
Prior MI: Yes { prevmi: "Yes" }
Prior MI: No { prevmi: "No" }
Prior MI: Unknown { prevmi: "Unknown" }
MI-When <=6 hrs { miwhen: " <=6 Hrs" }
MI-When >6 but <24 hrs { miwhen: " >6 Hrs but <24 Hrs" }
MI-When 1 to 7 days { miwhen: "1 to 7 Days" }
MI-When 8 to 21 days { miwhen: "8 to 21 Days" }
MI-When >21 days { miwhen: " >21 Days" }
Cardiac Arrhythmia .json
Cardiac Arrhythmia: Yes { arrhythmia: "Yes" }
Cardiac Arrhythmia: No { arrhythmia: "No" }
Cardiac Arrhythmia: Unknown { arrhythmia: "Unknown" }
Cardiac Arrhythmia - Atrial Fibrillation: Paroxysmal { arrhythafib: "Paroxysmal" }
Cardiac Arrhythmia - Atrial Fibrillation: Continuous / persistent { arrhythafib: "Continuous / persistent" }
Cardiac Arrhythmia - Atrial Fibrillation: None { arrhythafib: "None" }
RF .json
Chronic Lung Disease: Mild { chrlungd: "Mild" }
Chronic Lung Disease: Moderate { chrlungd: "Moderate" }
Chronic Lung Disease: Severe { chrlungd: "Severe" }
Chronic Lung Disease: Lung disease documented, severity unknown { chrlungd: "Lung disease documented, severity unknown" }
Chronic Lung Disease: No { chrlungd: "No" }
Chronic Lung Disease: Unknown { chrlungd: "Unknown" }
Cerebrovascular Dis: Yes { cvd: "Yes" }
Cerebrovascular Dis: No { cvd: "No" }
Cerebrovascular Dis: Unknown { cvd: "Unknown" }
Prior CVA: Yes { cva: "Yes" }
Prior CVA: No { cva: "No" }
Prior CVA: Unknown { cva: "Unknown" }
Peripheral Arterial Disease: Yes { pvd: "Yes" }
Peripheral Arterial Disease: No { pvd: "No" }
Peripheral Arterial Disease: Unknown { pvd: "Unknown" }
Diabetes: Yes { diabetes: "Yes" }
Diabetes: No { diabetes: "No" }
Diabetes: Unknown { diabetes: "Unknown" }
Diabetes-Control: Diet only { diabctrl: "Diet only" }
Diabetes-Control: Oral { diabctrl: "Oral" }
Diabetes-Control: Insulin { diabctrl: "Insulin" }
Diabetes-Control: Other { diabctrl: "Other" }
Diabetes-Control: Other subcutaneous medication { diabctrl: "Other subcutaneous medication" }
Diabetes-Control: None { diabctrl: "None" }
Diabetes-Control: Unknown { diabctrl: "Unknown" }
Hypertension: Yes { hypertn: "Yes" }
Hypertension: No { hypertn: "No" }
Hypertension: Unknown { hypertn: "Unknown" }
Immunocompromise: Yes { immsupp: "Yes" }
Immunocompromise: No { immsupp: "No" }
Immunocompromise: Unknown { immsupp: "Unknown" }
Endocarditis: Yes { infendo: "Yes" }
Endocarditis: No { infendo: "No" }
Coronary .json
Coronary Anatomy/Disease Known: Yes { coranatdisknown: "Yes" }
Coronary Anatomy/Disease Known: No { coranatdisknown: "No" }
Num Dis Vessels: One { numdisv: "One" }
Num Dis Vessels: Two { numdisv: "Two" }
Num Dis Vessels: Three { numdisv: "Three" }
Num Dis Vessels: None { numdisv: "None" }
Stenonis .json
Percent Native Artery Stenosis Known: Yes { pctstenknown: "Yes" }
Percent Native Artery Stenosis Known: No { pctstenknown: "No" }
Percent Stenonis - Left Main ∈ [0, 100] { pctstenlmain: 50 }
Resuscitation .json
Yes - Within 1 hour of the start of the procedure { resusc: "Yes - Within 1 hour of the start of the procedure" }
No { resusc: "No" }
Yes - More than 1 hour but less than 24 hours of the start of the procedure { resusc: "Yes - More than 1 hour but less than 24 hours of the start of the procedure" }
Cardiogenic Shock .json
Yes - At the time of the procedure { carshock: "Yes - At the time of the procedure" }
No { carshock: "No" }
Yes, not at the time of the procedure but within prior 24 hours { carshock: "Yes, not at the time of the procedure but within prior 24 hours" }
Classification-NYHA .json
Class I { classnyh: "Class I" }
Class II { classnyh: "Class II" }
Class III { classnyh: "Class III" }
Class IV { classnyh: "Class IV" }
IABP .json
IABP: Yes { iabp: "Yes" }
IABP: No { iabp: "No" }
IABP-When Inserted: Preop { iabpwhen: "Preop" }
IABP-When Inserted: Intraop { iabpwhen: "Intraop" }
IABP-When Inserted: Postop { iabpwhen: "Postop" }
Meds-Inotropes .json
Yes { medinotr: "Yes" }
No { medinotr: "No" }
Prev Cardiac Intervent .json
Prev Cardiac Intervent: Yes { prcvint: "Yes" }
Prev Cardiac Intervent: No { prcvint: "No" }
Previous PCI: Yes { pocpci: "Yes" }
Previous PCI: No { pocpci: "No" }
Previous PCI-Interval <= 6 hrs { pocpciin: " <= 6 Hours" }
Previous PCI-Interval > 6 hrs { pocpciin: " > 6 Hours" }
VD .json
VD-Mitral: Yes { vdmit: "Yes" }
VD-Mitral: No { vdmit: "No" }
VD-Stenosis-Mitral: Yes { vdstenm: "Yes" }
VD-Stenosis-Mitral: No { vdstenm: "No" }
VD-Aortic: Yes { vdaort: "Yes" }
VD-Aortic: No { vdaort: "No" }
VD-Stenosis-Aortic: Yes { vdstena: "Yes" }
VD-Stenosis-Aortic: No { vdstena: "No" }
VD-Insuff-Mitral: Trivial/Trace { vdinsufm: "Trivial/Trace" }
VD-Insuff-Mitral: Mild { vdinsufm: "Mild" }
VD-Insuff-Mitral: Moderate { vdinsufm: "Moderate" }
VD-Insuff-Mitral: Severe { vdinsufm: "Severe" }
VD-Insuff-Mitral: None { vdinsufm: "None" }
VD-Insuff-Mitral: Not documented { vdinsufm: "Not documented"}
VD-Insuff-Tricuspid: Trivial/Trace { vdinsuft: "Trivial/Trace" }
VD-Insuff-Tricuspid: Mild { vdinsuft: "Mild" }
VD-Insuff-Tricuspid: Moderate { vdinsuft: "Moderate" }
VD-Insuff-Tricuspid: Severe { vdinsuft: "Severe" }
VD-Insuff-Tricuspid: None { vdinsuft: "None" }
VD-Insuff-Tricuspid: Not documented { vdinsuft: "Not documented" }
VD-Insuff-Aortic: Trivial/Trace { vdinsufa: "Trivial/Trace" }
VD-Insuff-Aortic: Mild { vdinsufa: "Mild" }
VD-Insuff-Aortic: Moderate { vdinsufa: "Moderate" }
VD-Insuff-Aortic: Severe { vdinsufa: "Severe" }
VD-Insuff-Aortic: None { vdinsufa: "None" }
VD-Insuff-Aortic: Not documented { vdinsufa: "Not documented" }
Incidence .json
First cardiovascular surgery { incidenc: "First cardiovascular surgery" }
First re-op cardiovascular surgery { incidenc: "First re-op cardiovascular surgery" }
Second re-op cardiovascular surgery { incidenc: "Second re-op cardiovascular surgery" }
Third re-op cardiovascular surgery { incidenc: "Third re-op cardiovascular surgery" }
Fourth or more re-op cardiovascular surgery { incidenc: "Fourth or more re-op cardiovascular surgery" }
Prev CAB .json
Yes { prcab: "Yes" }
No { prcab: "No" }
Prev Valve .json
Yes { prvalve: "Yes" }
No { prvalve: "No" }

sts-calculator's People

Contributors

mstubna avatar therealthaibinh avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.