top of page

Welcome
to NumpyNinja Blogs

NumpyNinja: Blogs. Demystifying Tech,

One Blog at a Time.
Millions of views. 

A Data Analyst’s Sweet Struggle - A Lollipop Chart


Picture Courtesy Wix.com
Picture Courtesy Wix.com

Today I learned that data visualization can cause some other side effects.

Especially  while creating a lollipop chart during  formatting the  stick,  adjusting the circle size, and choosing the rainbow color palette, my brain  switches from  data analytics to  candy craving. Thats my Sweet Struggle


Sweet cravings apart lets talk about my work “The Lollipop chart




Lollipop chart showing trigger hours for patients with SIRS


Sepsis is a life-threatening medical emergency that happens when the body’s response to an infection damages vital organs and, often, causes death if not identified and treated early.


Sepsis occurs when your immune system has a dangerous reaction to an infection. It causes extensive inflammation throughout your body that can lead to tissue damage, organ failure and even death. Many different kinds of infections can trigger sepsis, which is a medical emergency. The quicker you receive treatment, the better your outcome will be.


I got an opportunity to work on a data analytics project team, doing analysis on clinical data related to Sepsis, using Tableau. In this blog I am sharing details about our work in that project, which can help individuals who would be doing similar work in the future. Also I take this blog as an opportunity to showcase my work experience in Tableau.


We used the clinical data, described in this website: https://physionet.org/content/challenge-2019/1.0.0/  Early Prediction of Sepsis from Clinical Data


The dataset shared with us is sourced from ICU patients in two separate hospital systems, and it had about 1.5 million records, which consists of Demographics, Vital Signs, and Laboratory values for each patient for every hour during their stay in ICU.


As a team we analyzed this dataset to gain insights about sepsis detection and management.



SIRS


SIRS (systemic inflammatory response syndrome) is an exaggerated defense response from your body to a harmful stressors. It causes severe inflammation throughout your body. This can lead to reversible or irreversible organ failure and even death.


Our team did analysis using Tableau to identify SIRS indicators in the dataset and developed a code to send on-time email alerts to medical care providers about the SIRS condition of patients to get immediate medical attention.


SIRS criteria


To be diagnosed with SIRS, you must have two or more of the following:


  • Body temperature over 100.4 degrees Fahrenheit (38 degrees Celsius) or under 96.8 degrees F (36 degrees C).

  • Heart rate greater than 90 beats per minute.

  • Respiratory rate greater than 20 breaths per minute or partial pressure of CO2 less than 32 mmHg.

  • Leukocytes (white blood cell) count greater than 12,000.


I first created calculations to identify if a patient has individual SIRS criteria like abnormal heart rate, abnormal respiratory rate, abnormal temperature, abnormal white blood cell count.


SIRS_HR = IF [HR] > 90 THEN 1 ELSE 0 END  
SIRS_Resp = IF [Resp] > 20 or [PaCO2]< 32 THEN 1 ELSE 0 END
SIRS_Temp = IF  [Temp] > 38.5 OR [Temp] < 35 THEN 1 ELSE 0 END
SIRS_WBC= IF [WBC] > 12.0000 OR [WBC] < 4.0000 THEN 1 ELSE 0 END

Each patients should be individually tested for SIRS especially Sepsis patients otherwise it may lead to organ failure or even death


Then I created a  calculated SIRS score for each patient by adding their SIRS score for each criteria


SIRS_SCORE = [SIRS_HR]+[SIRS_Resp]+[SIRS_Temp]+[SIRS_WBC]

SIRS Patients


If a patient has a SIRS_ SCORE >= 2 then they are diagnosed with SIRS and they will need immediate medical attention


Trigger Hour



Trigger hour is the crucial moment a patient first meets at least two SIRS criteria (high fever/low temperature, high heart/respiratory rate, high/low White Blood Cell), which might lead to sepsis ,organ failureor even death . Doctors or  healthcare teams need to be notified immediately about this so that they can initiate rapid care. It is crucial for identifying patients at risk for severe sepsis , septic shock or SIRS , with the Trigger  hour



Then I  calculated the trigger hour as their particular ICU Length of Stay (ICULOS) where their SIRS score is greater than or equal to 2.


Trigger Hour ={ FIXED [Patient ID] :

    MAX(IF [Iculos] <
		{ FIXED [Patient ID] :
			MIN(
                    IF [SIRS_SCORE] >= 2 THEN [Iculos] END
                )
           }
        THEN [Iculos]     END   )  }


Insights from the Chart


I've filtered this chart to show data for 20 patients , you can see the first patient's trigger hour is 4. patient ID 3 has trigger hour 2. and so on. At the Trigger hour an alert email will be sent to the health care team for immediate attention. Trigger hour may occur many times during their stay in ICU. But the alert will be sent only for the first Trigger hour. So the healthcare team will be keep monitoring.



Conclusion


By the time I finished the chart, I had:  

• A clean lollipop chart giving  elegant visualization  

• And a lollipop in my hand that I absolutely did not plan to eat

A Sweet unexpected Side Effect while  Building a Lollipop Chart


Data analysts face many challenges.  

Some are technical.  

Some are strategic.  

And some are… SUGARY .


May all your charts be clear, and your cravings be optional.



 


+1 (302) 200-8320

NumPy_Ninja_Logo (1).png

Numpy Ninja Inc. 8 The Grn Ste A Dover, DE 19901

© Copyright 2025 by Numpy Ninja Inc.

  • Twitter
  • LinkedIn
bottom of page