Learn R Programming

ricu (version 0.5.6)

sofa_score: SOFA score label

Description

The SOFA (Sequential Organ Failure Assessment) score is a commonly used assessment tool for tracking a patient's status during a stay at an ICU. Organ function is quantified by aggregating 6 individual scores, representing respiratory, cardiovascular, hepatic, coagulation, renal and neurological systems. The function sofa_score() is used as callback function to the sofa concept but is exported as there are a few arguments that can used to modify some aspects of the presented SOFA implementation. Internally, sofa_score() calls first sofa_window(), followed by sofa_compute() and arguments passed as ... will be forwarded to the respective internally called function.

Usage

sofa_score(
  ...,
  worst_val_fun = max_or_na,
  explicit_wins = FALSE,
  win_length = hours(24L),
  keep_components = FALSE,
  interval = NULL
)

sofa_resp(..., interval = NULL)

sofa_coag(..., interval = NULL)

sofa_liver(..., interval = NULL)

sofa_cardio(..., interval = NULL)

sofa_cns(..., interval = NULL)

sofa_renal(..., interval = NULL)

Value

A ts_tbl object.

Arguments

...

Concept data, either passed as list or individual argument

worst_val_fun

functions used to calculate worst values over windows

explicit_wins

The default FALSE iterates over all time steps, TRUE uses only the last time step per patient and a vector of times will iterate over these explicit time points

win_length

Time-frame to look back and apply the worst_val_fun

keep_components

Logical flag indicating whether to return the individual components alongside the aggregated score (with a suffix _comp added to their names)

interval

Time series interval (only used for checking consistency of input data, NULL will use the interval of the first data object)

Details

The function sofa_score() calculates, for each component, the worst value over a moving window as specified by win_length, using the function passed as worst_val_fun. The default functions max_or_na() return NA instead of -Inf/Inf in the case where no measurement is available over an entire window. When calculating the overall score by summing up components per time-step, a NA value is treated as 0.

Building on separate concepts, measurements for each component are converted to a component score using the definition by Vincent et. al.:

SOFA score1234
Respiration
PaO2/FiO2 [mmHg]< 400< 300< 200< 100
and mechanical ventilationyesyes
Coagulation
Platelets [×103/mm3]< 150< 100< 50< 20
Liver
Bilirubin [mg/dl]1.2-1.92.0-5.96.0-11.9> 12.0
Cardiovasculara
MAP< 70 mmHg
or dopamine≤5> 5> 15
or dobutamineany dose
or epinephrine≤0.1> 0.1
or norepinephrine≤0.1> 0.1
Central nervous system
Glasgow Coma Score13-1410-126-9< 6
Renal
Creatinine [mg/dl]1.2-1.92.0-3.43.5-4.9> 5.0
or urine output [ml/day]< 500< 200

Adrenergica agents administered for at least 1h (doses given are in [μg/kg · min]

At default, for each patient, a score is calculated for every time step, from the first available measurement to the last. In instead of a regularly evaluated score, only certain time points are of interest, this can be specified using the explicit_wins argument: passing for example hours(24, 48) will yield for every patient a score at hours 24 and 48 relative to the origin of the current ID system (for example ICU stay).

References

Vincent, J.-L., Moreno, R., Takala, J. et al. The SOFA (Sepsis-related Organ Failure Assessment) score to describe organ dysfunction/failure. Intensive Care Med 22, 707–710 (1996). https://doi.org/10.1007/BF01709751