MyNixOS website logo
Description

Estimating Penalized AFT Models via Coordinate Descent.

Provides penalized accelerated failure time (AFT) model estimation for right-censored and partly interval-censored survival data using induced smoothing and coordinate descent algorithms. Supported penalties include broken adaptive ridge (BAR), LASSO, adaptive LASSO, and SCAD. Core estimation routines are implemented in 'C++' via 'Rcpp' and 'RcppArmadillo' for computational efficiency. The methodology is related to Zeng and Lin (2008) <doi:10.1093/biostatistics/kxm034>, Xu et al. (2010) <doi:10.1002/sim.2576>, Dai et al. (2018) <doi:10.1016/j.jmva.2018.08.007>, and Choi et al. (2025) <doi:10.48550/arXiv.2503.11268>.

aftPenCDA

aftPenCDA is an R package for fitting penalized accelerated failure time (AFT) models using induced smoothing and coordinate descent algorithms. Computationally intensive components are implemented in 'C++' via 'Rcpp' (RcppArmadillo backend) to ensure scalability in high-dimensional settings.

The package supports both right-censored survival data and clustered partly interval-censored survival data, and provides flexible variable selection through several penalty functions.


Features

  • Induced smoothing-based AFT estimation for nonsmooth estimating equations
  • Penalized coordinate descent algorithm
  • Efficient C++ implementation via Rcpp (RcppArmadillo)
  • Support for high-dimensional regression
  • Supported penalties:
    • Broken Adaptive Ridge (BAR)
    • LASSO
    • Adaptive LASSO (ALASSO)
    • SCAD
  • Variance estimation methods:
    • "CF": closed-form plug-in estimator
    • "ZL": perturbation-based estimator based on Zeng and Lin (2008)

Installation

You can install the development version from GitHub:

# install.packages("devtools")
devtools::install_github("seonsy/aftPenCDA")

Main functions

aftpen()

Fits a penalized AFT model for right-censored survival data.

aftpen_pic()

Fits a penalized AFT model for clustered partly interval-censored survival data.

Both functions share the same interface:

aftpen(dt, lambda = 0.1, se = "CF", type = "BAR")
aftpen_pic(dt, lambda = 0.1, se = "CF", type = "BAR")

Input data format

Right-censored data (aftpen())

  • dt: a data frame where:
    • first column: y (observed time)
    • second column: d (event indicator; 1 = event, 0 = censoring)
    • remaining columns: covariates

Clustered partly interval-censored data (aftpen_pic())

  • dt: a data frame containing:
    • L, R: interval endpoints
    • delta: exact observation indicator (1 = exact, 0 = censored)
    • id: cluster identifier
    • remaining columns: covariates

Algorithm

The method combines induced smoothing with a coordinate descent algorithm. A quadratic approximation is constructed via Cholesky decomposition, leading to a least-squares-type problem.

Efficient coordinate-wise updates are then applied under different penalties.

Example

Right-censored data

library(aftPenCDA)

data("simdat_rc")

fit <- aftpen(simdat_rc, lambda = 0.1, se = "CF", type = "BAR")

fit$beta

Clustered partly interval-censored data

data("simdat_pic")

fit_pic <- aftpen_pic(simdat_pic, lambda = 0.001, se = "CF", type = "BAR")

fit_pic$beta

Arguments

ArgumentDescription
lambdaTuning parameter controlling penalization strength
type"BAR", "LASSO", "ALASSO", "SCAD"
seVariance estimation method ("CF" or "ZL")
rSCAD tuning parameter (default: 3.7)
epsConvergence tolerance (default: 1e-8)
max.iterMaximum number of iterations (default: 100)

Value

Both functions return a list with components:

  • beta: final penalized coefficient estimate

References

Wang, You-Gan, and Yudong Zhao. 2008. “Weighted Rank Regression for Clustered Data Analysis.” Biometrics 64 (1): 39–45.

Dai, L., K. Chen, Z. Sun, Z. Liu, and G. Li. 2018. “Broken Adaptive Ridge Regression and Its Asymptotic Properties.” Journal of Multivariate Analysis 168: 334–351.

Zeng, Donglin, and D. Y. Lin. 2008. “Efficient Resampling Methods for Nonsmooth Estimating Functions.” Biostatistics 9 (2): 355–363.

Note

This package is under development. Functionality and interfaces may change in future versions.

Metadata

Version

0.1.1

License

Unknown

Platforms (80)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    uefi
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-freebsd
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64-uefi
  • aarch64-windows
  • aarch64_be-none
  • arc-linux
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-linux
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • sh4-linux
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-uefi
  • x86_64-windows