Learn R Programming

sampleSelection (version 0.6-10)

probit: Probit binary choice model

Description

This function calculates probit binary choice model

Usage

probit(formula, subset, na.action, start = NULL, data = sys.frame(sys.parent()),
       x=FALSE, y = FALSE, model = FALSE, method="ML", ... )

Arguments

formula
a symbolic description of the model to be fit, in the form response ~ explanatory variables (see also details).
subset
an optional vector specifying a subset of observations to be used in the fitting process.
na.action
a function which indicates what should happen when the data contain 'NA's. The default is set by the 'na.action' setting of 'options', and is 'na.fail' if that is unset. The 'factory-fresh' default is 'na.omit'. Another po
start
inital value of parameters.
data
an optional data frame containing the variables in the model. If not found in data, the variables are taken from environment(formula), typically the environment from which probit is called.
x, y, model
logicals. If TRUE the corresponding components of the fit (the model matrix, the response, the model frame) are returned.
method
the method to use; for fitting, currently only method = "ML" (Maximum Likelihood) is supported; method = "model.frame" returns the model frame (the same as with model = TRUE, see below).
...
further arguments for maxLik.

Value

  • An object of class "probit". It is a list with following components:
  • LRTLikelihood ration test. The full model is tested against H0: the parameters have no effect on the result. This is a list with components
    • LRT
    {The LRT value} df{Degrees of freedom for LRT (= df of the model - 1)}
  • LRT is distributed by chi2(df) under H0.

item

  • param
  • nObs
  • N1
  • N0
  • df
  • x
  • y
  • model

itemize

  • nParam

code

maxLik

Details

The model is estimated using Maximum Likelihood method.

The dependent variable must have exactly two levels (e.g. '0' and '1', 'FALSE' and 'TRUE', or 'no' and 'yes'). probit always takes the first level as '0' and the second level as '1' -- no matter the actual value. However, by default levels are sorted in increasing order and thus, the second level is generally, e.g., '1' (after '0'), 'TRUE' (after 'FALSE'), or 'yes' (after 'no').

See Also

maxLik for ready-packaged likelihood maximisation routines and methods, glm for generalised linear models, including probit, binomial.

Examples

Run this code
## A simple MC trial: note probit assumes normal errors
x <- runif(100)
e <- 0.5*rnorm(100)
y <- x + e
summary(probit((y > 0) ~ x))
## female labour force participation probability
data(Mroz87)
Mroz87$kids <- Mroz87$kids5 > 0 | Mroz87$kids618 > 0
Mroz87$age30.39 <- Mroz87$age < 40
Mroz87$age50.60 <- Mroz87$age >= 50
summary(probit(lfp ~ kids + age30.39 + age50.60 + educ + hushrs +
               huseduc + huswage + mtr + motheduc, data=Mroz87))

Run the code above in your browser using DataLab