View source: R/fragility_tools.R
| fragility_report | R Documentation |
Produces the case-level fragility summary described in §5 of Marsico
& Egeland (in preparation): total weight of evidence, inclusion
concentration index C_W^+, worst-case leave-one-out loss,
residual support after removal of the most impactful marker, and an
optional comparison against a pedigree-specific cutoff (typically
produced by calibrate_concentration_cutoff).
fragility_report(per_marker_lrs, cutoff = NULL, probs = NULL)
per_marker_lrs |
Named numeric vector of per-marker likelihood ratios (strictly positive). Names become the marker labels in the report. |
cutoff |
Optional numeric scalar. If supplied, the report flags
cases whose observed |
probs |
Optional numeric in |
The report is a direct operationalization of Paper 1 §5:
W is the combined weight of evidence in bans.
C_W^+ answers the question “what fraction of the
inclusion support comes from a single marker?”
(1 - C_W^+) W is the residual support after the
single-marker worst case, i.e.\ what the analyst would be left
with if a successful challenge to the top marker were sustained.
The flag is raised when C_W^+ exceeds the
pedigree-specific cutoff, which in turn is typically the 90th
percentile of the H_p simulation distribution produced by
calibrate_concentration_cutoff.
A list with elements
total_log10_lrTotal weight of evidence
W = \sum_k \log_{10}\mathrm{LR}_k (in bans).
concentrationInclusion concentration index
C_W^+ \in [0, 1].
top_markerName of the single most impactful supporting marker.
top_log10_lrLog-LR of the top marker (in bans).
residual_log10_lrTotal support that survives
worst-case removal of the top marker, (1 - C_W^+) W.
flagLogical. TRUE if cutoff was
supplied and C_W^+ > \text{cutoff}; NA otherwise.
statementCharacter scalar. A ready-to-paste natural-language fragility statement for the case report.
Marsico, F. L. & Egeland, T. (in preparation). Belief dynamics during the investigative process.
concentration_index_positive,
leave_one_out,
calibrate_concentration_cutoff.
# Balanced case: 15 markers, similar contributions
set.seed(1)
lrs <- setNames(runif(15, 1.5, 3.5), paste0("M", 1:15))
fragility_report(lrs)
# Concentrated case: one dominant marker
lrs2 <- setNames(c(1e5, rep(1.05, 14)), paste0("M", 1:15))
fragility_report(lrs2, cutoff = 0.20, probs = 0.90)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.