cleverly.sensitivity.evalue.evalue#

cleverly.sensitivity.evalue.evalue(result: TMLEResult, estimand: str | None = None) → EValue[source]#

E-value for a fitted result.

estimand=None prefers a reported risk ratio. For an eligible binomial ordinary-TMLE result that reports only a marginal ATE or odds ratio, it retargets the retained nuisances to the matching exact risk ratio. An explicit odds-ratio request preserves the caller’s chosen square-root approximation. Routing uses structured parameter keys or forward-composed fitted arm identities; display aliases are never parsed. Unsupported exact retargets can use a reported reference risk for an approximate ATE conversion. That conversion needs a reference risk its own standard error separates from zero, and it refuses a difference that implies a nonpositive risk in the contrast arm. Gaussian ATE, ATT, and ATC use the standardized-difference approximation, which divides by the weighted outcome standard deviation on a weighted fit.

Parameters:
resultTMLEResult

A fitted result.

estimandstr or None

Alias to report on. None picks the ratio-scale estimand the fit reported, which is the scale an E-value is defined on.

Returns:
EValue

The association needed to explain the estimate and the interval away.

Raises:
CapabilityError

If no branch covers the request. A fit with an intermediate variable estimates a controlled direct effect, and every request on it refuses because this package has no implemented E-value bound for its fitted target and confounding model.