ic_scmprisk_spTran_copula {CopulaCenR} | R Documentation |

Fits a copula model with semi-parametric transformation margins for semi-competing risk data under interval-censoring and left-truncation.

```
ic_scmprisk_spTran_copula(
data,
var_list,
copula = "Copula2",
l1 = 0,
u1,
m1 = 3,
r1 = 1,
l2 = 0,
u2,
m2 = 3,
r2 = 1,
method = "BFGS",
iter = 1000,
stepsize = 1e-05,
control = list(),
eta_ini = NULL
)
```

`data` |
a data frame; must have |

`var_list` |
the list of covariates to be fitted into the copula model. |

`copula` |
Types of copula model, only Copula2 is supported at this stage. |

`l1` |
for non-terminal event, the left bound for all |

`u1` |
for non-terminal event, the right bound for all |

`m1` |
for non-terminal event, integer, degree of Berstein polynomials for both margins; default is 3 |

`r1` |
for non-terminal event, postive transformation parameter for the semiparametric transformation marginal model. |

`l2` |
for terminal event, the left bound for all |

`u2` |
for terminal event, the right bound for all |

`m2` |
for terminal event, integer, degree of Berstein polynomials for both margins; default is 3 |

`r2` |
for terminal event, postive transformation parameter for the semiparametric transformation marginal model. |

`method` |
optimization method (see ?optim); default is "BFGS"; also can be "Newton" (see ?nlm). |

`iter` |
number of iterations when method is |

`stepsize` |
size of optimization step when method is |

`control` |
a list of control parameters for methods other than |

`eta_ini` |
a vector of initial values for copula parameters, default is NULL |

The input data must be a data frame. with columns `id`

(sample id),
`Left`

(0 if left-censoring), `Right`

(Inf if right-censoring),
`status`

(0 for right-censoring, 1 for interval-censoring or left-censoring),
`timeD`

(for terminal event), `statusD`

,`A`

(0 if no left truncation),
and `covariates`

. The function does not allow `Left`

== `Right`

.

The supported copula model in this version is `"Copula2"`

.
The `"Copula2"`

model is a two-parameter copula model that incorporates `Clayton`

and `Gumbel`

as special cases.
The parametric generator functions of copula functions are list below:

The Two-parameter copula (Copula2) has a generator

`\phi_{\eta}(t) = \{1/(1+t^{\alpha})\}^{\kappa},`

with `\alpha \in (0,1], \kappa > 0`

and Kendall's `\tau = 1-2\alpha\kappa/(2\kappa+1)`

.

The marginal semiparametric transformation models are built based on Bernstein polynomials, which is formulated below:

`S(t|Z) = \exp[-G\{\Lambda(t) e^{Z^{\top}\beta}\}],`

where `t`

is time, `Z`

is covariate,
`\beta`

is coefficient and `\Lambda(t)`

is an unspecified function with infinite dimensions.
We approximate `\Lambda(t)`

in a sieve space constructed by Bernstein polynomials with degree `m`

. By default, `m=3`

.
In the end, all model parameters are estimated by the sieve estimators (Sun and Ding, In Press).

The `G(\cdot)`

function is the transformation function with a parameter `r > 0`

, which has a form of
`G(x) = \frac{(1+x)^r - 1}{r}`

, when `0 < r \leq 2`

and `G(x) = \frac{\log\{1 + (r-2)x\}}{r - 2}`

when `r > 2`

.
When `r = 1`

, the marginal model becomes a proportional hazards model;
when `r = 3`

, the marginal model becomes a proportional odds model.
In practice, `m`

and `r`

can be selected based on the AIC value.

Optimization methods can be all methods (except `"Brent"`

) from `optim`

, such as
`"Nelder-Mead"`

, `"BFGS"`

, `"CG"`

, `"L-BFGS-B"`

, `"SANN"`

.
Users can also use `"Newton"`

(from `nlm`

).

a `CopulaCenR`

object summarizing the model.
Can be used as an input to general `S3`

methods including
`summary`

, `print`

, `coef`

,
`logLik`

, `AIC`

, `BIC`

.

Tao Sun, Yunlong Li, Zhengyan Xiao, Ying Ding, Xiaojun Wang (2022). Semiparametric copula method for semi-competing risks data subject to interval censoring and left truncation: Application to disability in elderly. Statistical Methods in Medical Research (Accepted).

```
# fit a Copula2-Semiparametric model
data("data_scmprisk")
copula2_sp <- ic_scmprisk_spTran_copula(data = data_scmprisk,
var_list = c("x1"), copula = "Copula2",
l1=0, u1 = 21, m1 = 3, r1 = 1,
l2=0, u2 = 21, m2 = 3, r2 = 1,
)
summary(copula2_sp)
```

[Package *CopulaCenR* version 1.2.3 Index]