fix(lods): remove incorrect BUN >= 7.50 renal point - #2119
Conversation
ea8536c to
55f3046
Compare
Le Gall LODS awards renal +1 for BUN 17-27 mg/dL (then 28-55 -> 3, >=56 -> 5). The extra `bun_max >= 7.50 then 1` branch incorrectly scored BUN 7.5-16.9 as organ dysfunction. Remove it in MIMIC-III and MIMIC-IV sources and their dialect copies. Fixes MIT-LCP#1065
55f3046 to
61226d3
Compare
Chessing234
left a comment
There was a problem hiding this comment.
this tracks — that >= 7.50 arm was sitting under the >= 17 check so it was quietly giving renal points for bun ~7.5–16.9, which isn't in le gall. deleting it is cleaner than rewriting thresholds. good that you hit both iii and iv + dialects.
|
that bun >= 7.50 arm looks like a unit mixup. glad it's gone — maybe add a one-line comment with the intended mg/dl cutoff. |
Chessing234
left a comment
There was a problem hiding this comment.
the bun_max >= 7.50 arm was unreachable under bun_max >= 17.0 in the same case, so deleting it is correct for lods. mirrored across iii/iv and all dialects — nice. a short pr note citing the lods paper threshold table would help reviewers who weren't in the original bug report.
Document Le Gall 17/28/56 mg/dL thresholds next to the renal score so mmol/L-style arms (e.g. 7.50) are not reintroduced. Mirror in postgres.
|
Added an inline note beside the renal Mirrored in MIMIC-III + MIMIC-IV BigQuery sources and the postgres dialect copies (duckdb transpile drops comments by design). PR body already cites Le Gall et al., JAMA 1996. |
Chessing234
left a comment
There was a problem hiding this comment.
worth saying up front that this one is clean where the sibling prs aren't — i ran the repo's transpiler (sqlglot 30.11.0 from requirements-lock) over both bigquery sources and all four dialect copies here come back byte-identical to transpiler output, so the regeneration was done properly.
i also checked the arithmetic rather than taking the paper on trust. urea in mmol/L times 2.8 gives BUN in mg/dL, so Le Gall's 6.0 / 10.0 / 20.0 mmol/L cutoffs land on 16.8 / 28 / 56 mg/dL — which is exactly the 17 / 28 / 56 already in the query. that leaves 7.50 with no basis at either scale, and since it sits below the >= 17.0 arm it only ever fired for BUN 7.5–16.9 mg/dL, i.e. an entirely normal BUN scoring a renal point. so i agree the arm is wrong and should go.
what i'd want before this lands is the evidence. this silently lowers LODS for a population, and anyone reproducing previously published numbers off this concept will see a shift, so the pr should say how big it is. the arm was only reachable when creatinine_max < 1.20 and urineoutput was between 750 and 10000 as well, and that combination is common — could you run it on the demo and report how many icustay_ids change their renal component and their total lods? if it turns out to be nothing in the demo, say that too and note it's a correctness fix rather than a data-visible one.
one observation, not something to fix here — mimic-iii/concepts/severityscores/saps.sql:201 still has when bun_max >= 7.50 then 1, and mlods.sql carries the same line commented out. i'm deliberately not asking you to touch those in this pr, but the note you've added says not to reintroduce mmol/L-style thresholds while an identical one survives two files over, so it may be worth a line pointing at saps rather than leaving the next reader to find it.
last small thing: in both postgres copies the transpiler attaches your new comment to the end of the cardiovascular CASE (END AS cardiovascular, /* renal */ /* BUN cutoffs are mg/dL ... */) rather than to the renal one. that's transpiler comment placement, not your doing, but since the comment exists specifically to stop someone reinstating the arm, putting it inside the renal CASE in the bigquery source would make it land where it's needed.
Summary
bun_max >= 7.50 THEN 1branch from MIMIC-III and MIMIC-IVlods.sqlCASEso a mmol/L-style arm is not reintroducedWhy
Le Gall et al. (JAMA 1996) score serum urea nitrogen as:
MIMIC stores BUN in mg/dL. The extra
>= 7.50arm incorrectly awarded renal points for BUN ~7.5–16.9 (and sat under the>= 17check in the sameCASE).Test plan
7.50threshold remains in anylods.sqlFixes #1065