| Version: | 1.2.6 | 
| Date: | 2025-03-26 | 
| Title: | Conditional Logistic Regression: A Two-Step Estimation Method | 
| Description: | Conditional logistic regression with longitudinal follow up and individual-level random coefficients: A stable and efficient two-step estimation method. | 
| License: | GPL-2 | 
| Imports: | survival, stats | 
| Suggests: | testthat | 
| LazyData: | true | 
| RoxygenNote: | 7.3.2 | 
| NeedsCompilation: | no | 
| Packaged: | 2025-03-26 19:40:50 UTC; Sophie | 
| Author: | Radu V. Craiu [aut], Thierry Duchesne [aut, cre], Daniel Fortin [aut], Sophie Baillargeon [aut] | 
| Maintainer: | Thierry Duchesne <thierry.duchesne@mat.ulaval.ca> | 
| Repository: | CRAN | 
| Date/Publication: | 2025-03-27 12:00:06 UTC | 
Conditional Logistic Regression: A Two-Step Estimation Method
Description
Conditional logistic regression with longitudinal follow up and
individual-level random coefficients: A stable and efficient two-step
estimation method (see Ts.estim).
Details
| Package: | TwoStepCLogit | 
| Type: | Package | 
| Version: | 1.2.6 | 
| Date: | 2025-03-26 | 
| License: | GPL-2 | 
Author(s)
Radu V. Craiu, Thierry Duchesne, Daniel Fortin and Sophie Baillargeon
Maintainer: Thierry Duchesne <thierry.duchesne@mat.ulaval.ca>
References
Craiu, R.V., Duchesne, T., Fortin, D. and Baillargeon, S. (2011), Conditional Logistic Regression with Longitudinal Follow-up and Individual-Level Random Coefficients: A Stable and Efficient Two-Step Estimation Method, Journal of Computational and Graphical Statistics. 20(3), 767-784.
Two-Step Estimator
Description
Function that computes the two-step estimator proposed in Craiu et al.
(2011) and its print method.
Usage
Ts.estim(
  formula,
  data,
  random,
  all.m.1 = FALSE,
  D = "UN(1)",
  itermax = 2000,
  tole = 1e-06
)
## S3 method for class 'Ts.estim'
print(x, ...)
Arguments
formula | 
 A formula object, with the response on the left of a   | 
data | 
 A data frame (or object coercible by as.data.frame to a data frame) containing the variables in the model.  | 
random | 
 A formula object, with a blank on the left of a   | 
all.m.1 | 
 
  | 
D | 
 The form of the between-cluster variance-covariance matrix of the regression 
coefficients (matrix D) : either   | 
itermax | 
 maximal number of EM iterations (default = 2000)  | 
tole | 
 maximal distance between successive EM iterations tolerated before declaring convergence (default = 0.000001)  | 
x | 
 An object, produced by the   | 
... | 
 Further arguments to be passed to   | 
Details
Calls coxph from the package survival.
Value
beta | 
 A vector: the regression coefficients.  | 
se | 
 A vector: the regression coefficients' standard errors.  | 
vcov | 
 A matrix: the variance-covariance matrix of the regression coefficients.  | 
D | 
 A matrix: estimate of the between-cluster variance-covariance matrix of the regression coefficients (matrix D).  | 
r.effect | 
 The random effect estimates.  | 
coxph.warn | 
  A list of character string vectors. If the   | 
Call | 
 The function call.  | 
Author(s)
Radu V. Craiu, Thierry Duchesne, Daniel Fortin and Sophie Baillargeon
References
Craiu, R.V., Duchesne, T., Fortin, D. and Baillargeon, S. (2011), Conditional Logistic Regression with Longitudinal Follow-up and Individual-Level Random Coefficients: A Stable and Efficient Two-Step Estimation Method, Journal of Computational and Graphical Statistics. 20(3), 767-784.
See Also
Examples
# Two ways for specifying the same model
# Data: bison
# Model: covariates forest, biomass and pmeadow
# Random effects in front of forest and biomass
# Main diagonal covariance structure for D (the default)
way1 <- Ts.estim(formula = Y ~ forest  + biomass + pmeadow + 
        strata(Strata) + cluster(Cluster), data = bison, 
        random = ~ forest + biomass)
way1
way2 <- Ts.estim(formula = bison[,3] ~ as.matrix(bison[,c(6,8:9)]) + 
        strata(bison[,2]) + cluster(bison[,1]), data = bison, 
        random = ~ as.matrix(bison[,c(6,8)]))
way2
# Unstructured covariance for D
Fit <- Ts.estim(formula = Y ~ forest  + biomass + pmeadow + 
        strata(Strata) + cluster(Cluster), data = bison, 
        random = ~ forest + biomass, D="UN")
Fit
Bison Dataset
Description
Bison data collected in Prince Albert National Park, Saskatchewan, Canada (Craiu et al. 2011).
Format
A data frame with 16818 observations on the following 10 variables.
- Cluster
 pair of animals (dyad) ID
- Strata
 stratum ID
- Y
 response variable: 1 for visited locations, 0 otherwise
- water
 land cover indicator covariate: 1 for water, 0 otherwise
- agric
 land cover indicator covariate: 1 for agricultural locations , 0 otherwise
- forest
 land cover indicator covariate: 1 for forests, 0 otherwise
- meadow
 land cover indicator covariate: 1 for meadows, 0 otherwise
- biomass
 continuous covariate: above-ground vegetation biomass index measured (in
kg/m^2) only at locations within meadows, 0 otherwise- pmeadow
 continuous covariate: the proportion of meadow in a circular plot (700 m in radius) centered at the bison's location
Details
This data set was collected in order to study habitat selection by groups of free-ranging bison. For each observed group, two individuals (dyad) equipped with GPS radio-collars were followed simultaneously. A cluster is defined here as a pair of bison. This data set contains 20 clusters. The number of strata per cluster varies between 13 and 345 for a total of 1410 strata. A stratum is composed of two visited GPS locations (one for each individual) gathered at the same time, together with 10 random locations (five drawn within 700 m of each of the two focal bison). Therefore, there are 12 observations per stratum, with 2 cases (Y=1) and 10 controls (Y=0). However, due to problems in the data collection, 17 of the 1410 strata have only 6 observations (1 case and 5 controls).
References
Craiu, R.V., Duchesne, T., Fortin, D. and Baillargeon, S. (2011), Conditional Logistic Regression with Longitudinal Follow-up and Individual-Level Random Coefficients: A Stable and Efficient Two-Step Estimation Method, Journal of Computational and Graphical Statistics. 20(3), 767-784.
Examples
# Some descriptive statistics about the data set:
ddim(formula = Y ~ strata(Strata) + cluster(Cluster), data = bison)
 
# Model 1: covariates meadow, biomass and biomass^2
# Random effects in front of biomass and biomass^2
# Main diagonal covariance structure for D
Fit1 <- Ts.estim(formula = Y ~ meadow + biomass + I(biomass^2) + 
        strata(Strata) + cluster(Cluster), data = bison, 
        random = ~ biomass + I(biomass^2), all.m.1=FALSE, D="UN(1)")
Fit1
# Model 2: only covariates biomass and biomass^2
# Random effects in front of biomass and biomass^2
# Main diagonal covariance structure for D
Fit2 <- Ts.estim(formula = Y ~ biomass + I(biomass^2) + strata(Strata) + 
        cluster(Cluster), data = bison, all.m.1=FALSE, D="UN(1)")
Fit2
# Results reported in Table 2 of Craiu et al. (2011).
Data Dimension Statistics
Description
Function that computes dimension statistics for a data set with clusters and strata
and its print method.
Usage
ddim(formula, data)
## S3 method for class 'ddim'
print(x, ...)
Arguments
formula | 
 A formula object, with the response on the left of a   | 
data | 
 A data frame (or object coercible by as.data.frame to a data frame) containing the variables in the model.  | 
x | 
 An object, produced by the   | 
... | 
 Further arguments to be passed to   | 
Value
Sc | 
 The number of strata in each cluster.  | 
Ystat | 
  A data.frame with   | 
See Also
Examples
dimstat <- ddim(formula = Y ~ strata(Strata) + cluster(Cluster), data = bison)
dimstat