This function helps the parametrizations of covariates and covariate
coeffcients when users specify a general hazard rate function in function
`simEvent`

and `simEventData`

. It applies the specified function
(or the built-in option) `FUN`

to the \(i_{th}\) row of the covariate
matrix `z`

and the \(i_{th}\) row of the coefficient matrix,
iteratively, for \(i\) from one to the number of rows of the covariate
matrix `z`

.

## Usage

`parametrize(z, zCoef, FUN = c("exponential", "linear", "excess"), ...)`

## Arguments

- z
A numeric matrix, each row of which represents the covariate vector at one perticular time point.

- zCoef
A numeric matrix, each row of which represents the covariate coeffcient vector at one perticular time point.

- FUN
The parametrization of the model parameter(s) with covariates and covariate coefficients. The built-in options include

`"exponential"`

,`"linear"`

,`"excess"`

for parametrization in the exponential, linear, excess relative risk model form, respectively. It can also be a function that at least has argument`z`

and`zCoef`

for incorporating the covariates and covariate coefficients into the model. The user-specified function should expect that both the input`z`

and`zCoef`

are numeric vectors and return a numeric value (or can be convected to a numeric value by`as.numeric`

).- ...
Other arguments that can be passed to the function

`FUN`

.

## Examples

```
## time points
timeVec <- c(0.5, 2)
## time-variant covariates
zMat <- cbind(0.5, ifelse(timeVec > 1, 1, 0))
## time-varying coefficients
zCoefMat <- cbind(sin(timeVec), timeVec)
## the following three ways are equivalent for the exponential form,
## where the first one (using the built-in option) has the best performance
parametrize(zMat, zCoefMat, FUN = "exponential")
#> [1] 1.270884 11.642343
parametrize(zMat, zCoefMat, function(z, zCoef) exp(z %*% zCoef))
#> [1] 1.270884 11.642343
sapply(1 : 2, function(i) as.numeric(exp(zMat[i, ] %*% zCoefMat[i, ])))
#> [1] 1.270884 11.642343
```