# gcmr

##### Fitting Gaussian Copula Marginal Regression Models by Maximum (Simulated) Likelihood.

Fits Gaussian copula marginal regression models by maximum (simulated) likelihood.

- Keywords
- regression, nonlinear

##### Usage

```
gcmr(formula, data, subset, offset, marginal,
cormat, start, fixed, options=gcmr.options(...), model=TRUE,...)
```gcmr.fit(x=rep(1,NROW(y)), y, z=NULL, offset=NULL,
marginal, cormat, start, fixed, options=gcmr.options())

##### Arguments

- formula
a symbolic description of the model to be fitted of type

`y ~ x`

or`y ~ x | z`

, for details see below.- data
an optional data frame, list or environment (or object coercible by

`as.data.frame`

to a data frame) containing the variables in the model. If not found in`data`

, the variables are taken from`environment(formula)`

.- subset
an optional vector specifying a subset of observations to be used in the fitting process.

- offset
optional numeric vector with an a priori known component to be included in the linear predictor for the mean. When appropriate, offset may also be a list of two offsets for the mean and precision equation, respectively.

- x
design matrix.

- y
vector of observations.

- z
optional design matrix for the dispersion/shape.

- marginal
an object of class

`marginal.gcmr`

specifying the marginal part of the model.- cormat
an object of class

`cormat.gcmr`

representing the correlation matrix of the errors.- start
optional numeric vector with starting values for the model parameters.

- fixed
optional numeric vector of the same length as the total number of parameters. If supplied, only

`NA`

entries in fixed will be varied.- options
list of options passed to function

`gcmr.options`

.- model
logical. If

`TRUE`

, then the model frame is returned.- ...
arguments passed to

`gcmr.options`

.

##### Details

Function `gcmr`

computes maximum likelihood estimation in Gaussian copula marginal regression models. Computation of the exact likelihood is possible only for continuous responses, otherwise the likelihood function is approximated by importance sampling. See Masarotto and Varin (2012; 2017) for details.

Standard formula `y ~ x1 + x2`

indicates that the mean response is modelled as a function of covariates `x1`

and `x2`

through an appropriate link function. Extended formula `y ~ x1 + x2 | z1 + z2`

indicates that the dispersion (or the shape) parameter of the marginal distribution is modelled as a function of covariates `z1`

and `z2`

. Dispersion (or shape) parameters are always modelled on logarithm scale. The model specification is inspired by beta regression as implemented in `betareg`

(Cribari-Neto and Zeileis, 2010) through extended `Formula`

objects (Zeileis and Croissant, 2010).

For binomial marginals specified by `binomial.marg`

the response is specified as a factor when the first level denotes failure and all others success or as a two-column matrix with the columns giving the numbers of successes and failures.

`gcmr.fit`

is the workhorse function: it is not normally called directly but can be more efficient where the response vector and design matrix have already been calculated.

##### Value

An object of class `"gcmr"`

with the following components:

the maximum likelihood estimate.

the maximum likelihood value.

(minus) the Hessian at the maximum likelihood estimate.

the Jacobian at the maximum likelihood estimate.

the fitted values.

the marginal model used.

the correlation matrix used.

the numeric vector indicating which parameters are constants.

the indices of marginal parameters.

the indices of dependence parameters.

the number of marginal parameters.

the number of dependence parameters.

the fitting options used, see `gcmr.options`

.

the matched call.

the model formula.

the terms objects for the fitted model.

the levels of the categorical regressors.

the model frame, returned only if `model=TRUE`

.

the contrasts corresponding to `levels`

.

the y vector used.

the model matrix used for the mean response.

the (optional) model matrix used for the dispersion/shape.

the offset used.

the number of observations.

the vector of binary indicators of the available observations (not missing).

Functions coefficients, logLik, fitted, vcov.gcmr and residuals.gcmr can be used to extract various useful features of the value returned by gcmr. Function plot.gcmr produces various diagnostic plots for fitted gcmr objects.

##### References

Cribari-Neto, F. and Zeileis, A. (2010). Beta regression in R. *Journal of Statistical Software* **34**, 1--24. http://www.jstatsoft.org/v34/i02/.

Masarotto, G. and Varin, C. (2012). Gaussian copula marginal regression. *Electronic Journal of Statistics* **6**, 1517--1549. http://projecteuclid.org/euclid.ejs/1346421603.

Masarotto, G. and Varin C. (2017). Gaussian Copula Regression in R. *Journal of Statistical Software*, **77**(8), 1--26. 10.18637/jss.v077.i08.

Rocha, A.V. and Cribari-Neto, F. (2009). Beta autoregressive moving average models. *Test* **18**, 529--545.

Zeileis, A. and Croissant, Y. (2010). Extended model formulas in R: Multiple parts and multiple responses. *Journal of Statistical Software* **34**, 1--13. http://www.jstatsoft.org/v34/i01/.

##### See Also

##### Examples

```
# NOT RUN {
## negative binomial model for longitudinal data
data(epilepsy)
gcmr(counts ~ offset(log(time)) + visit + trt + visit:trt, data = epilepsy,
subset = (id != 49), marginal = negbin.marg, cormat = cluster.cormat(id, "ar1"),
options=gcmr.options(seed=123, nrep=100 ))
## Hidden Unemployment Rate (HUR) data (Rocha and Cribari-Neto, 2009)
## beta regression with ARMA(1,3) errors
data(HUR)
trend <- scale(time(HUR))
gcmr(HUR ~ trend | trend, marginal = beta.marg, cormat = arma.cormat(1, 3))
# }
```

*Documentation reproduced from package gcmr, version 1.0.2, License: GPL (>= 2)*