Cyclic Coordinate Descent for Logistic, Poisson and Survival Analysis

This model fitting tool incorporates cyclic coordinate descent and majorization-minimization approaches to fit a variety of regression models found in large-scale observational healthcare data. Implementations focus on computational optimization and fine-scale parallelization to yield efficient inference in massive datasets.


Cyclops (Cyclic coordinate descent for logistic, Poisson and survival analysis) is an R package for performing large scale regularized regressions.


  • Regression of very large problems: up to millions of observations, millions of variables
  • Supports (conditional) logistic regression, (conditional) Poisson regression, as well as (conditional) Cox regression
  • Uses a sparse representation of the independent variables when appropriate
  • Supports using no prior, a normal prior or a Laplace prior
  • Supports automatic selection of hyperparameter through cross-validation
  • Efficient estimation of confidence intervals for a single variable using a profile-likelihood for that variable


  cyclopsData <- createCyclopsDataFrame(formula)
  cyclopsFit <- fitCyclopsModel(cyclopsData)


Cyclops in an R package, with most functionality implemented in C++. Cyclops uses cyclic coordinate descent to optimize the likelihood function, which makes use of the sparse nature of the data.

System Requirements

Requires R (version 3.1.0 or higher). Installation on Windows requires RTools (devtools >= 1.12 required for RTools34, otherwise RTools33 works fine).


  • There are no dependencies.

Getting Started

  1. On Windows, make sure RTools is installed.
  2. In R, use the following commands to download and install Cyclops:
  1. To perform a Cyclops model fit, use the following commands in R:
cyclopsData <- createCyclopsDataFrame(formula)
cyclopsFit <- fitCyclopsModel(cyclopsData)

Getting Involved


Cyclops is licensed under Apache License 2.0. Cyclops contains the TinyThread libray.

The TinyThread library is licensed under the zlib/libpng license as described here.


Cyclops is being developed in R Studio.



  • This project is supported in part through the National Science Foundation grants IIS 1251151 and DMS 1264153.


Cyclops v1.2.2 (Release date: 2016-10-06)

Changes: 1. fixed solaris build errors 2. added compatibility for C++14 (make_unique) 3. fixed multiple ASan warnings

Cyclops v1.2.0 (Release date: 2016-08-01)

Changes: initial submission to CRAN

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.3.0 by Marc A. Suchard, a month ago

Report a bug at

Browse source code at

Authors: Marc A. Suchard [aut, cre], Martijn J. Schuemie [aut], Trevor R. Shaddox [aut]

Documentation:   PDF Manual  

Task views: Survival Analysis

Apache License 2.0 license

Imports Matrix, Rcpp, bit, ff, ffbase, RcppParallel, methods, survival

Suggests testthat, gnm, ggplot2

Linking to Rcpp, BH, RcppEigen, RcppParallel

See at CRAN