cleverly.validation.RepeatSpreadRow#

class cleverly.validation.RepeatSpreadRow(estimand: str, n_repeats: int, standard_deviation: float, reported_standard_error: float, ratio_to_standard_error: float)[source]#

Split sensitivity for one parameter in a repeated cross-fitted result.

Parameters:
estimandstr

Stable alias of the reported parameter.

n_repeatsint

Number of cross-fitting split draws on the same sample.

standard_deviationfloat

Sample standard deviation of \(\hat\psi_r\) across the draws, on the inference scale of the estimand. That is \(\log\hat\psi_r\) for a ratio, so the value is comparable with reported_standard_error.

reported_standard_errorfloat

Standard error on the median-combined result, on the inference scale. On a fit that supplies no inference it is the plug-in diagnostic plugin_std_error, and NuisanceDiagnostics.repeat_spread_frame() publishes it as plugin_standard_error.

ratio_to_standard_errorfloat

Split standard deviation divided by reported_standard_error. This ratio is descriptive and has no pass threshold.

Methods#

RepeatSpreadRow.row() → list[str][source]#

Return this parameter’s spread as one row of the split-sensitivity table.

Returns:
list of str

The formatted cells, in the column order NuisanceDiagnostics.summary() prints. A cell with no finite value reads "-", as every other table in this package renders a missing cell.

Attributes#

RepeatSpreadRow.estimand: str#
RepeatSpreadRow.n_repeats: int#
RepeatSpreadRow.standard_deviation: float#
RepeatSpreadRow.reported_standard_error: float#
RepeatSpreadRow.ratio_to_standard_error: float#