HeckmanBS: Heckman-BS Model Fit Function

View source: R/HeckmanBS.R

HeckmanBSR Documentation

Heckman-BS Model Fit Function

Description

Fits the Heckman Sample Selection Model based on the Birnbaum-Saunders (BS) bivariate distribution. This function implements the maximum likelihood estimation of the model parameters.

Usage

HeckmanBS(selection, outcome, data = sys.frame(sys.parent()), start = NULL)

Arguments

selection

A formula object specifying the selection equation.

outcome

A formula object specifying the primary outcome equation.

data

A data frame containing the variables in the model.

start

An optional numeric vector of initial parameter values. If not provided, default values are used.

Details

The function estimates the parameters of the Heckman-BS model, which extends the classical Heckman model by assuming that the error terms follow a bivariate Birnbaum-Saunders distribution. The model has the same number of parameters as the classical Heckman model, including the correlation coefficient between the error terms. The optimization is performed using the optim function with the BFGS method.

The estimated quantities include:

  • Coefficients of the selection equation.

  • Coefficients of the outcome equation.

  • Estimated sigma (scale parameter of the outcome equation's error term).

  • Estimated rho (correlation coefficient between the error terms).

Additional outputs include measures of model fit, standard errors (approximated by the square root of the diagonal of the inverse Fisher information matrix), and diagnostic information.

Value

A list containing:

  • coefficients: A named numeric vector of estimated model parameters.

  • value: The value of the likelihood function at the optimum.

  • loglik: The (negative) maximum log-likelihood.

  • counts: Number of gradient evaluations performed.

  • hessian: The Hessian matrix at the optimum.

  • fisher_infoBS: The (approximate) Fisher information matrix.

  • prop_sigmaBS: Approximate standard errors (square root of the Fisher information diagonal).

  • level: Levels of the selection variable.

  • nObs: Number of observations in the dataset.

  • nParam: Number of parameters estimated.

  • N0: Number of observations where the selection variable is zero.

  • N1: Number of observations where the selection variable is one.

  • NXS: Number of parameters in the selection equation.

  • NXO: Number of parameters in the outcome equation.

  • df: Degrees of freedom (observations minus number of parameters).

  • aic: Akaike Information Criterion.

  • bic: Bayesian Information Criterion.

  • initial.value: Initial values used in the optimization.

References

\insertAllCited

Examples

data(MEPS2001)
attach(MEPS2001)
selectEq <- dambexp ~ age + female + educ + blhisp + totchr + ins + income
outcomeBS <- ambexp ~ age + female + educ + blhisp + totchr + ins
HeckmanBS(selectEq, outcomeBS, data = MEPS2001)


ssmodels documentation built on June 8, 2025, 10:49 a.m.