# UtilitiesVGAM: Utility Functions for the VGAM Package

Description Usage Arguments Details Value Author(s) References See Also Examples

### Description

A set of common utility functions used by VGAM family functions.

### Usage

 ```1 2 3``` ```param.names(string, S) dimm(M, hbw = M) interleave.VGAM(.M, M1, inverse = FALSE) ```

### Arguments

 `string` Character. Name of the parameter. `M, .M` Numeric. The total number of linear/additive predictors, called M. By total, it is meant summed over the number of responses. Often, M is the total number of parameters to be estimated (but this is not the same as the number of regression coefficients, unless the RHS of the formula is an intercept-only). The use of `.M` is unfortunate, but it is a compromise solution to what is presented in Yee (2015). Ideally, `.M` should be just `M`. `M1` Numeric. The number of linear/additive predictors for one response, called M_1. This argument used to be called `M`, but is now renamed properly. `inverse` Logical. Useful for the inverse function of `interleave.VGAM()`. `S` Numeric. The number of responses. `hbw` Numeric. The half-bandwidth, which measures the number of bands emanating from the central diagonal band.

### Details

See Yee (2015) for some details about some of these functions.

### Value

For `param.names()`, this function returns the parameter names for S responses, i.e., `string` is returned unchanged if S=1, else `paste(string, 1:S, sep = "")`.

For `dimm()`, this function returns the number of elements to be stored for each of the working weight matrices. They are represented as columns in the matrix `wz` in e.g., `vglm.fit()`. See the matrix-band format described in Section 18.3.5 of Yee (2015).

For `interleave.VGAM()`, this function returns a reordering of the linear/additive predictors depending on the number of responses. The arguments presented in Table 18.5 may not be valid in your version of Yee (2015).

### Author(s)

T. W. Yee. Victor Miranda added the `inverse` argument to `interleave.VGAM()`.

### References

Yee, T. W. (2015) Vector Generalized Linear and Additive Models: With an Implementation in R. New York, USA: Springer.

`CommonVGAMffArguments`, `VGAM-package`.

### Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14``` ```param.names("shape", 1) # "shape" param.names("shape", 3) # c("shape1", "shape2", "shape3") dimm(3, hbw = 1) # Diagonal matrix; the 3 elements need storage. dimm(3) # A general 3 x 3 symmetrix matrix has 6 unique elements. dimm(3, hbw = 2) # Tridiagonal matrix; the 3-3 element is 0 and unneeded. M1 <- 2; ncoly <- 3; M <- ncoly * M1 mynames1 <- param.names("location", ncoly) mynames2 <- param.names("scale", ncoly) (parameters.names <- c(mynames1, mynames2)[interleave.VGAM(M, M1 = M1)]) # The following is/was in Yee (2015) and has a poor/deceptive style: (parameters.names <- c(mynames1, mynames2)[interleave.VGAM(M, M = M1)]) parameters.names[interleave.VGAM(M, M1 = M1, inverse = TRUE)] ```

Search within the VGAM package
Search all R packages, documentation and source code

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.