OneAtATimeSensitivity

OneAtATimeSensitivity(target=None, **data)

Serializable one-at-a-time sensitivity analysis configuration.

Attributes

Name Description
model_config dict() -> new empty dictionary

Methods

Name Description
evaluate Evaluate sensitivity results as a tidy dataframe.
plot Plot one-at-a-time results as a tornado chart.
restore_target_operands Restore MCModel operand objects after JSON validation.

evaluate

OneAtATimeSensitivity.evaluate()

Evaluate sensitivity results as a tidy dataframe.

All distribution leaves are fixed to center_percentile for the baseline. Each distribution is then varied through percentiles while all other distribution leaves remain fixed at the centre value. Constants are not included as sensitivity variables.

plot

OneAtATimeSensitivity.plot(
    ax=None,
    *,
    show=False,
    positive_color='seagreen',
    negative_color='firebrick',
    baseline_kwargs=None,
    bar_kwargs=None,
    line_kwargs=None,
)

Plot one-at-a-time results as a tornado chart.

Variables are ranked by their largest absolute effect on the centered result. Symmetric percentile pairs are drawn from widest to narrowest: an outer p99-p1 pair is shown as a line, while inner pairs such as p90-p10 and p75-p25 are shown as progressively thicker horizontal bars. Impacts to the right of the centered result are green; impacts to the left are red. The centered result is shown as a black dashed vertical line.

restore_target_operands

OneAtATimeSensitivity.restore_target_operands()

Restore MCModel operand objects after JSON validation.