Skip to content

How the operation end time was charted

The charted operation end time is a mixture of 4 ways of writing a clock time (floor_30min, floor_10min, floor_5min, clock_minute), modelled as an offset from a device time.

Date 2026-10-18
Status current
Methods Rounding, heaping and value resolution, Clinical and laboratory times
Variables Operation end time

Background

  • Op end is a charted event time with a 1-minute chronon.
  • About one in twelve op ends appears to have been set from the recording itself rather than from the record (see the imputed-times study).

Data

  • 5,850 op ends, after excluding the 537 imputed from the recording (598–604 s before it ends; status imputed).
  • 92 op ends do not share the sub-minute offset of the other charted times in their case and are flagged clock_offset_mismatch.
  • 52 op ends come after anaesthesia end (order_violation) and 108 equal it (same_time).

Method

  • The true op end is modelled relative to the recording end with a log-spline offset (K = 12, chosen by BIC).
  • Nearest, floor and ceiling anchors were compared, along with 10- and 30-minute modes.
  • Posteriors were compared across K, because the latent is narrow relative to the grid.

Results

Bar chart of charted times by minute past the hour, with tall bars on multiples of five.
The minute past the hour of every charted time: the heaps on multiples of 5, and at the standard first-case times, are the rounding modes the model fits.
  • The anchor is floor (nearest is 173 BIC points worse, ceiling 312): op ends are written as the 5-minute mark at or before the true end.
  • This is the opposite of anaesthesia end, which is written up to the next mark.
  • The true op end is on average about 2.5 min after the charted one, so charted op durations run about 2.5 min short.
  • The package reproduces the stored log-likelihood within 0.14.

Discussion

  • Related times are rounded in opposite directions, so the anchor is fitted per variable and never assumed shared.
  • Intervals inherit both biases: charted emergence (op end to anaesthesia end) is inflated by about 6–7 min.

Observations it supports

Observation Status Summary
Op end was filled in from the recording end in 537 cases established In 537 cases (8.4%) the op end is exactly 10 minutes before the end of the recording, so it was filled in rather than charted. These cases are concentrated in thoracic surgery and under sedation or spinal anaesthesia.

Limitations

  • The latent has two narrow peaks (13 and 17 min before the recording ends). With most values on a 5-minute grid, fine structure in a narrow latent is hard to separate from rounding, so these peaks should not be read as real.

Open questions

  • Was op end imputed deliberately? (next step). Was op end imputed from recording end deliberately? This is to be asked of the VitalDB team.
  • Where the imputed op ends are (next step). Mapped on 18 October: thoracic surgery and cases under sedation or spinal anaesthesia have far more imputed op ends than the rest (Op end was filled in from the recording end in 537 cases). The model already excludes them; analyses that use op end should check whether their subgroup is one of these.

Model

Model file: …/models/opend.model.json. Read from the pinned snapshot of vitaldb-resolution at commit bb03ddfc8a (2026-10-18).

How a true value becomes the recorded one. The rules are tried in order: a record not taken by an earlier rule is taken by this one with the probability shown (where its condition holds); the last rule takes the rest. With no conditions, the shares follow directly.

Order Rule Rounds to Probability if reached Share of records
1 floor_30min 30 clock minute (floor) 0.3 % 0.3 %
2 floor_10min 10 clock minute (floor) 4.1 % 4.1 %
3 floor_5min 5 clock minute (floor) 95.8 % 91.5 %
4 clock_minute 1 clock minute (floor) the rest 4.1 %
Recorded resolution 1 min (chronon) (modelled at 1)
True-value density reference_offset_spline
Covariates ref
Fitted on 5,850 records (clinical_data.csv)
BIC 18,944
Fitted 2026-10-18

Code

Tags: generated, vitaldb-resolution