Journal of Clinical Medicine Research, ISSN 1918-3003 print, 1918-3011 online, Open Access
Article copyright, the authors; Journal compilation copyright, J Clin Med Res and Elmer Press Inc
Journal website https://jocmr.elmerjournals.com

Original Article

Volume 17, Number 12, December 2025, pages 676-687


Machine Learning-Based Model to Classify Emergency Severity Index Levels 1-3 in Febrile Patients With Tachycardia: Thailand Triage Prediction System

Figures

Figure 1.
Figure 1. Study flow diagram. bpm: beats per minute; ESI: Emergency Severity Index; PR: pulse rate.
Figure 2.
Figure 2. Feature importance of machine learning models for predicting Emergency Severity Index (ESI) levels 1 to 3.
Figure 3.
Figure 3. Receiver operating characteristic (ROC) curves of machine learning models for predicting Emergency Severity Index (ESI) levels 1 to 3.
Figure 4.
Figure 4. Calibration plots for machine learning models predicting Emergency Severity Index (ESI) levels 1 to 3 in the test set.

Tables

Table 1. Baseline Characteristics of Febrile Patients With Tachycardia by ESI Levels 1 to 3
 
Baseline characteristicsMissingLevel 1 (n = 98), n (%)Level 2 (n = 256), n (%)Level 3 (n = 146), n (%)P value
bpm: beats per minute; ESI: Emergency Severity Index; DBP: diastolic blood pressure; GCS: Glasgow Coma Scale; IQR: interquartile range; MAP: mean arterial pressure; RR: respiratory rate; SBP: systolic blood pressure; SD: standard deviation; SpO2: peripheral capillary oxygen saturation.
Male061 (62.2)122 (47.7)74 (50.7)0.046
Age (years), mean ± SD065.1 ± 17.354.0 ± 21.937.7 ± 16.2< 0.001
Vital signs
  Temperature (°C), mean ± SD038.7 ± 0.838.7 ± 0.838.6 ± 0.70.111
  Pulse rate (bpm), mean ± SD0129.3 ± 21.3118.1 ± 10.5110.6 ± 6.1< 0.001
  SBP (mm Hg), mean ± SD0119.2 ± 35.1132.6 ± 24.8126.1 ± 18.5< 0.001
  DBP (mm Hg), mean ± SD070.6 ± 23.878.4 ± 15.878.2 ± 13.3< 0.001
  MAP (mm Hg), mean ± SD086.7 ± 26.596.4 ± 17.394.1 ± 13.9< 0.001
  RR (breaths/min), mean ± SD029.2 ± 7.821.4 ± 3.219.6 ± 1.3< 0.001
  SpO2 (%), mean ± SD093.4 ± 8.396.6 ± 2.596.9 ± 1.7< 0.001
  GCS, median (IQR)015 (14, 15)15 (15, 15)15 (15, 15)< 0.001
  Pain scale, median (IQR)00 (0, 0)0 (0, 0)0 (0, 4)< 0.001
Chief complaints
  Dyspnea044 (44.9)41 (16.0)4 (2.7)< 0.001
  Chest pain/palpitation/syncope08 (8.2)21 (8.2)4 (2.7)0.065
  Cough03 (3.1)19 (7.4)25 (17.1)< 0.001
  Alteration of consciousness06 (6.1)10 (3.9)0 (0)0.005
  Seizure01 (1.0)3 (1.2)0 (0)0.527
  Abdominal/pelvic pain07 (7.1)35 (13.7)24 (16.4)0.099
  Vomiting/diarrhea03 (3.1)15 (5.9)14 (9.6)0.128
  Genitourinary02 (2.0)10 (3.9)7 (4.8)0.550
  Headache02 (2.0)8 (3.1)14 (9.6)0.010
  Dizziness00 (0)7 (2.7)11 (7.5)0.005
  Fatigue/poor intake04 (4.1)33 (12.9)3 (2.1)< 0.001
  Back pain00 (0)3 (1.2)2 (1.4)0.712
  Musculoskeletal06 (6.1)22 (8.6)27 (18.5)0.003
Comorbidities
  Diabetic mellitus021 (21.4)64 (25.0)12 (8.2)< 0.001
  Essential hypertension039 (39.8)99 (38.7)22 (15.1)< 0.001
  Dyslipidemia028 (28.6)72 (28.1)13 (8.9)< 0.001
  Chronic kidney disease09 (9.2)20 (7.8)3 (2.1)0.022
  Cardiovascular disease012 (12.2)12 (4.7)1 (0.7)< 0.001
  Respiratory disease012 (12.2)13 (5.1)3 (2.1)0.004
  Neurovascular disease011 (11.2)23 (9.0)3 (2.1)0.004
  Autoimmune disease01 (1.0)4 (1.6)0 (0)0.409
  Hematologic disease09 (9.2)9 (3.5)4 (2.7)0.049
  Malignancy012 (12.2)25 (9.8)6 (4.1)0.042
Current medications
  Beta-blocker011 (11.2)19 (7.4)3 (2.1)0.008
  Immunosuppressants07 (7.1)17 (6.6)1 (0.7)0.006

 

Table 2. Performance Metrics of Machine Learning Models for Predicting ESI Levels 1 to 3
 
ModelsAuROC95% CIAccuracyRecallPrecisionF1 score
AuROC: area under the receiver operating characteristic curve; CI: confidence interval; ESI: Emergency Severity Index; F1 score: harmonic mean of precision and recall; XGBoost: Extreme Gradient Boosting.
Random forest
  ESI level 11.000.99, 1.001.000.701.000.82
  ESI level 20.930.88, 0.980.820.920.820.87
  ESI level 30.960.93, 1.000.860.860.860.86
XGBoost
  ESI level 11.000.99, 1.001.000.701.000.82
  ESI level 20.940.89, 0.980.830.880.830.86
  ESI level 30.970.93, 1.000.810.900.810.85
Gradient boosting machine
  ESI level 11.000.99, 1.001.000.701.000.82
  ESI level 20.930.88, 0.980.830.860.830.85
  ESI level 30.960.92, 1.000.790.900.790.84

 

Table 3. Confusion Matrix for the Random Forest Model
 
Predicted ESI (n, %)Observed ESI (n, %)Total
123
Observed ESI: Emergency Severity Index level assigned by triage nurses; Predicted ESI: Emergency Severity Index level assigned by the random forest model.
114 (14.0)6 (6.0)0 (0)20 (20.0)
20 (0)47 (47.0)4 (4.0)51 (51.0)
30 (0)4 (4.0)25 (25.0)29 (29.0)
Total14 (14.0)57 (57.0)29 (29.0)100 (100)

 

Table 4. Confusion Matrix for the Extreme Gradient Boosting Model
 
Predicted ESI (n, %)Observed ESI (n, %)Total
123
Observed ESI: Emergency Severity Index level assigned by triage nurses; Predicted ESI: Emergency Severity Index level assigned by the extreme gradient boosting model.
114 (14.0)6 (6.0)0 (0)20 (20.0)
20 (0)45 (45.0)6 (6.0)51 (51.0)
30 (0)3 (3.0)26 (26.0)29 (29.0)
Total14 (14.0)54 (54.0)32 (32.0)100 (100)

 

Table 5. Confusion Matrix for the Gradient Boosting Machine Model
 
Predicted ESI (n, %)Observed ESI (n, %)Total
123
Observed ESI: Emergency Severity Index level assigned by triage nurses; Predicted ESI: Emergency Severity Index level assigned by gradient boosting machine model.
114 (14.0)6 (6.0)0 (0)20 (20.0)
20 (0)44 (44.0)7 (7.0)51 (51.0)
30 (0)3 (3.0)26 (26.0)29 (29.0)
Total14 (14.0)53 (53.0)33 (33.0)100 (100)

 

Table 6. Predicted Triage Misclassification and Penalty Scores Across Machine Learning Models
 
ModelUnder-triage (two steps) (n, %)Under-triage (one step) (n, %)Over-triage (two steps) (n, %)Over-triage (one step) (n, %)Mean penalty
Under-triage (two steps): predicted ESI two levels lower than observed (e.g., observed level 1 predicted as level 3); Under-triage (one step): predicted one level lower (e.g., observed level 2 predicted as level 3); Over-triage (two steps): predicted two levels higher (e.g., observed level 3 predicted as level 1); Over-triage (one step): predicted one level higher (e.g., observed level 2 predicted as level 1); XGBoost: extreme gradient boosting.
Random forest0 (0)4 (4.0)0 (0)10 (10.0)0.22
XGBoost0 (0)3 (3.0)0 (0)12 (12.0)0.21
Gradient boosting machine0 (0)3 (3.0)0 (0)13 (13.0)0.22