Skip to contents

One-arm distribution-free variance confidence bounds for outcomes in [0, 1].

Usage

variance_bounds_maurer_pontil(y, beta_l, beta_u, na.rm = TRUE)

variance_bounds_martinez_taboada_ramdas(
  y,
  beta_l,
  beta_u,
  na.rm = TRUE,
  lower_alpha_split = 0.5,
  c1 = 0.5,
  c2 = 0.25^2,
  c3 = 0.25,
  c4 = 0.5,
  c5 = 2,
  cs = FALSE,
  tilde_cs = TRUE
)

Arguments

y

Pilot outcomes for one arm.

beta_l

One-sided endpoint error for the lower variance bound.

beta_u

One-sided endpoint error for the upper variance bound.

na.rm

If TRUE, drop missing outcomes.

lower_alpha_split

MTR split of the lower-tail error between variance and mean components.

c1, c2, c3, c4, c5

Martinez-Taboada–Ramdas tuning constants.

cs, tilde_cs

Logical flags for the MTR predictable-mixture variants.

Value

A list with lower bound L, upper bound U, sample variance vhat, method name, arm sample size n, and method-specific statistic details. For Maurer–Pontil bounds, vhat is the raw Bessel sample variance and can slightly exceed 0.25 in finite samples even though the returned endpoints are capped to [0, 0.25]; use statistic$projected_vhat for diagnostics that require a variance on the unit-interval scale.

Examples

y <- c(0.10, 0.30, 0.40, 0.20, 0.70, 0.50)
variance_bounds_maurer_pontil(y, beta_l = 0.025, beta_u = 0.025)
#> $L
#> [1] 0
#> 
#> $U
#> [1] 0.25
#> 
#> $vhat
#> [1] 0.04666667
#> 
#> $method
#> [1] "bounded"
#> 
#> $n
#> [1] 6
#> 
#> $statistic
#> $statistic$vhat
#> [1] 0.04666667
#> 
#> $statistic$projected_vhat
#> [1] 0.04666667
#> 
#> $statistic$sdhat
#> [1] 0.2160247
#> 
#> $statistic$beta_l
#> [1] 0.025
#> 
#> $statistic$beta_u
#> [1] 0.025
#> 
#>