# zelig: Estimating a Statistical Model In Zelig: Everyone's Statistical Software

## Description

The zelig function estimates a variety of statistical models. Use `zelig` output with `setx` and `sim` to compute quantities of interest, such as predicted probabilities, expected values, and first differences, along with the associated measures of uncertainty (standard errors and confidence intervals).

## Usage

 `1` ```zelig(formula, model, data, ..., by = NULL, cite = TRUE) ```

## Arguments

 `formula` a symbolic representation of the model to be estimated, in the form `y \~\, x1 + x2`, where `y` is the dependent variable and `x1` and `x2` are the explanatory variables, and `y`, `x1`, and `x2` are contained in the same dataset. (You may include more than two explanatory variables, of course.) The `+` symbol means “inclusion” not “addition.” You may also include interaction terms and main effects in the form `x1*x2` without computing them in prior steps; `I(x1*x2)` to include only the interaction term and exclude the main effects; and quadratic terms in the form `I(x1^2)`. `model` the name of a statistical model to estimate. For a list of other supported models and their documentation see: http://docs.zeligproject.org/articles/. `data` the name of a data frame containing the variables referenced in the formula or a list of multiply imputed data frames each having the same variable names and row numbers (created by `Amelia` or `to_zelig_mi`). `...` additional arguments passed to `zelig`, relevant for the model to be estimated. `by` a factor variable contained in `data`. If supplied, `zelig` will subset the data frame based on the levels in the `by` variable, and estimate a model for each subset. This can save a considerable amount of effort. For example, to run the same model on all fifty states, you could use: ```z.out <- zelig(y ~ x1 + x2, data = mydata, model = 'ls', by = 'state')``` You may also use `by` to run models using MatchIt subclasses. `cite` If is set to 'TRUE' (default), the model citation will be printed to the console.

## Details

This documentation describes the `zelig` Zelig 4 compatibility wrapper function.

Additional parameters avaialable to many models include:

## Value

Depending on the class of model selected, `zelig` will return an object with elements including `coefficients`, `residuals`, and `formula` which may be summarized using `summary(z.out)` or individually extracted using, for example, `coef(z.out)`. See http://docs.zeligproject.org/articles/getters.html for a list of functions to extract model components. You can also extract whole fitted model objects using `from_zelig_model`.

## Author(s)

Matt Owen, Kosuke Imai, Olivia Lau, and Gary King