Skip to contents

Compares Rigobon's regime-based identification with OLS and standard Lewbel identification (if applicable).

Usage

compare_rigobon_methods(
  data,
  true_gamma1 = NULL,
  methods = c("OLS", "Rigobon", "Lewbel"),
  verbose = TRUE
)

Arguments

data

Data.frame. Must contain required variables for all methods.

true_gamma1

Numeric. Optional. True value of the endogenous parameter.

methods

Character vector. Methods to compare (default: c("OLS", "Rigobon", "Lewbel")).

verbose

Logical. Whether to print progress messages (default: TRUE).

Value

A data frame comparing the methods with columns for estimates, standard errors, bias (if true value provided), and method-specific diagnostics.

References

Rigobon, R. (2003). Identification through heteroskedasticity. Review of Economics and Statistics, 85(4), 777-792. doi:10.1162/003465303772815727

Examples

if (FALSE) { # \dontrun{
# Generate data with known true parameter
params <- list(
  beta1_0 = 0.5, beta1_1 = 1.5, gamma1 = -0.8,
  beta2_0 = 1.0, beta2_1 = -1.0,
  alpha1 = -0.5, alpha2 = 1.0,
  regime_probs = c(0.4, 0.6),
  sigma2_regimes = c(1.0, 2.5)
)
data <- generate_rigobon_data(1000, params)

# Compare methods
comparison <- compare_rigobon_methods(data, true_gamma1 = params$gamma1)
} # }