Skip to content

ccar3

Canonical Correlation Analysis via Reduced Rank Regression

v0.1.0 · Sep 16, 2025 · MIT + file LICENSE

Description

Canonical correlation analysis (CCA) via reduced-rank regression with support for regularization and cross-validation. Several methods for estimating CCA in high-dimensional settings are implemented. The first set of methods, cca_rrr() (and variants: cca_group_rrr() and cca_graph_rrr()), assumes that one dataset is high-dimensional and the other is low-dimensional, while the second, ecca() (for Efficient CCA) assumes that both datasets are high-dimensional. For both methods, standard l1 regularization as well as group-lasso regularization are available. cca_graph_rrr further supports total variation regularization when there is a known graph structure among the variables of the high-dimensional dataset. In this case, the loadings of the canonical directions of the high-dimensional dataset are assumed to be smooth on the graph. For more details see Donnat and Tuzhilina (2024) <doi:10.48550/arXiv.2405.19539> and Wu, Tuzhilina and Donnat (2025) <doi:10.48550/arXiv.2507.11160>.

Downloads

547

Last 30 days

7375th

1.5K

Last 90 days

3.1K

Last year

Trend: +6.2% (30d vs prior 30d)

CRAN Check Status

10 ERROR
4 OK
Show all 14 flavors
Flavor Status
r-devel-linux-x86_64-debian-clang ERROR
r-devel-linux-x86_64-debian-gcc ERROR
r-devel-linux-x86_64-fedora-clang ERROR
r-devel-linux-x86_64-fedora-gcc ERROR
r-devel-macos-arm64 ERROR
r-devel-windows-x86_64 ERROR
r-oldrel-macos-arm64 OK
r-oldrel-macos-x86_64 OK
r-oldrel-windows-x86_64 ERROR
r-patched-linux-x86_64 ERROR
r-release-linux-x86_64 ERROR
r-release-macos-arm64 OK
r-release-macos-x86_64 OK
r-release-windows-x86_64 ERROR
Check details (20 non-OK)
WARNING r-devel-linux-x86_64-debian-clang

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-devel-linux-x86_64-debian-clang

tests

Running ‘testthat.R’ [84s/104s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
  > # * https://testthat.r-lib.org/articles/special-files.html
  > 
  > library(testthat)
  > library(ccar3)
  > 
  > test_check("ccar3")
  Loading required package: ggplot2
  Loading required package: lattice
  
   Permutation  1  out of  50  123456789
   Permutation  2  out of  50  123456789
   Permutation  3  out of  50  123456789
   Permutation  4  out of  50  123456789
   Permutation  5  out of  50  123456789
   Permutation  6  out of  50  123456789
   Permutation  7  out of  50  123456789
   Permutation  8  out of  50  123456789
   Permutation  9  out of  50  123456789
   Permutation  10  o
...[truncated]...
es the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "5" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_group_rrr(...) at test-cca_group_rrr.R:76:3
   2.   └─ccar3:::solve_group_rrr_cvxr(X, tilde_Y, groups, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  ── Error ('test-cca_rrr.R:68:3'): cca_rrr computes the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "10" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr(...) at test-cca_rrr.R:68:3
   2.   └─ccar3:::solve_rrr_cvxr(X, tilde_Y, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  Error:
  ! Test failures.
  Execution halted
WARNING r-devel-linux-x86_64-debian-gcc

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-devel-linux-x86_64-debian-gcc

tests

Running ‘testthat.R’ [63s/72s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
  > # * https://testthat.r-lib.org/articles/special-files.html
  > 
  > library(testthat)
  > library(ccar3)
  > 
  > test_check("ccar3")
  Loading required package: ggplot2
  Loading required package: lattice
  
   Permutation  1  out of  50  123456789
   Permutation  2  out of  50  123456789
   Permutation  3  out of  50  123456789
   Permutation  4  out of  50  123456789
   Permutation  5  out of  50  123456789
   Permutation  6  out of  50  123456789
   Permutation  7  out of  50  123456789
   Permutation  8  out of  50  123456789
   Permutation  9  out of  50  123456789
   Permutation  10  ou
...[truncated]...
es the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "5" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_group_rrr(...) at test-cca_group_rrr.R:76:3
   2.   └─ccar3:::solve_group_rrr_cvxr(X, tilde_Y, groups, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  ── Error ('test-cca_rrr.R:68:3'): cca_rrr computes the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "10" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr(...) at test-cca_rrr.R:68:3
   2.   └─ccar3:::solve_rrr_cvxr(X, tilde_Y, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  Error:
  ! Test failures.
  Execution halted
WARNING r-devel-linux-x86_64-fedora-clang

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-devel-linux-x86_64-fedora-clang

tests

Running ‘testthat.R’ [143s/220s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
  > # * https://testthat.r-lib.org/articles/special-files.html
  > 
  > library(testthat)
  > library(ccar3)
  > 
  > test_check("ccar3")
  Loading required package: ggplot2
  Loading required package: lattice
  
   Permutation  1  out of  50  123456789
   Permutation  2  out of  50  123456789
   Permutation  3  out of  50  123456789
   Permutation  4  out of  50  123456789
   Permutation  5  out of  50  123456789
   Permutation  6  out of  50  123456789
   Permutation  7  out of  50  123456789
   Permutation  8  out of  50  123456789
   Permutation  9  out of  50  123456789
   Permutation  10  
...[truncated]...
es the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "5" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_group_rrr(...) at test-cca_group_rrr.R:76:3
   2.   └─ccar3:::solve_group_rrr_cvxr(X, tilde_Y, groups, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  ── Error ('test-cca_rrr.R:68:3'): cca_rrr computes the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "10" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr(...) at test-cca_rrr.R:68:3
   2.   └─ccar3:::solve_rrr_cvxr(X, tilde_Y, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  Error:
  ! Test failures.
  Execution halted
WARNING r-devel-linux-x86_64-fedora-gcc

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-devel-linux-x86_64-fedora-gcc

tests

Running ‘testthat.R’ [138s/173s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
  > # * https://testthat.r-lib.org/articles/special-files.html
  > 
  > library(testthat)
  > library(ccar3)
  > 
  > test_check("ccar3")
  Loading required package: ggplot2
  Loading required package: lattice
  
   Permutation  1  out of  50  123456789
   Permutation  2  out of  50  123456789
   Permutation  3  out of  50  123456789
   Permutation  4  out of  50  123456789
   Permutation  5  out of  50  123456789
   Permutation  6  out of  50  123456789
   Permutation  7  out of  50  123456789
   Permutation  8  out of  50  123456789
   Permutation  9  out of  50  123456789
   Permutation  10  
...[truncated]...
es the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "5" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_group_rrr(...) at test-cca_group_rrr.R:76:3
   2.   └─ccar3:::solve_group_rrr_cvxr(X, tilde_Y, groups, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  ── Error ('test-cca_rrr.R:68:3'): cca_rrr computes the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "10" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr(...) at test-cca_rrr.R:68:3
   2.   └─ccar3:::solve_rrr_cvxr(X, tilde_Y, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  Error:
  ! Test failures.
  Execution halted
WARNING r-devel-macos-arm64

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-devel-macos-arm64

tests

Running ‘testthat.R’ [28s/21s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
  > # * https://testthat.r-lib.org/articles/special-files.html
  > 
  > library(testthat)
  > library(ccar3)
  > 
  > test_check("ccar3")
  Loading required package: ggplot2
  Loading required package: lattice
  
   Permutation  1  out of  50  123456789
   Permutation  2  out of  50  123456789
   Permutation  3  out of  50  123456789
   Permutation  4  out of  50  123456789
   Permutation  5  out of  50  123456789
   Permutation  6  out of  50  123456789
   Permutation  7  out of  50  123456789
   Permutation  8  out of  50  123456789
   Permutation  9  out of  50  123456789
   Permutation  10  ou
...[truncated]...
es the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "5" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_group_rrr(...) at test-cca_group_rrr.R:76:3
   2.   └─ccar3:::solve_group_rrr_cvxr(X, tilde_Y, groups, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  ── Error ('test-cca_rrr.R:68:3'): cca_rrr computes the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "10" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr(...) at test-cca_rrr.R:68:3
   2.   └─ccar3:::solve_rrr_cvxr(X, tilde_Y, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  
  [ FAIL 2 | WARN 0 | SKIP 0 | PASS 112 ]
  Error:
  ! Test failures.
  Execution halted
WARNING r-devel-windows-x86_64

dependencies in R code

Missing or unexported object: 'CVXR::solve'
ERROR r-devel-windows-x86_64

tests

Running 'testthat.R' [87s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
  > # * https://testthat.r-lib.org/articles/special-files.html
  > 
  > library(testthat)
  > library(ccar3)
  > 
  > test_check("ccar3")
  Loading required package: ggplot2
  Loading required package: lattice
  
  Estimating optimal shrinkage intensity lambda.var (variance vector): 1 
  
  Estimating optimal shrinkage intensity lambda (correlation matrix): 0.0479 
  
  Estimating optimal shrinkage intensity lambda.var (variance vector): 1 
  
  Estimating optimal shrinkage intensity lambda (correlation matrix): 0.0479 
  
  
  Attaching package: 'Matrix'
  
  The following objects are masked from 'pa
...[truncated]...
es the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "5" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_group_rrr(...) at test-cca_group_rrr.R:76:3
   2.   └─ccar3:::solve_group_rrr_cvxr(X, tilde_Y, groups, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  ── Error ('test-cca_rrr.R:68:3'): cca_rrr computes the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "10" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr(...) at test-cca_rrr.R:68:3
   2.   └─ccar3:::solve_rrr_cvxr(X, tilde_Y, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  Error:
  ! Test failures.
  Execution halted
WARNING r-oldrel-windows-x86_64

dependencies in R code

Missing or unexported object: 'CVXR::solve'
ERROR r-oldrel-windows-x86_64

tests

Running 'testthat.R' [121s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
  > # * https://testthat.r-lib.org/articles/special-files.html
  > 
  > library(testthat)
  > library(ccar3)
  > 
  > test_check("ccar3")
  Loading required package: ggplot2
  Loading required package: lattice
  
  Estimating optimal shrinkage intensity lambda.var (variance vector): 1 
  
  Estimating optimal shrinkage intensity lambda (correlation matrix): 0.0479 
  
  Estimating optimal shrinkage intensity lambda.var (variance vector): 1 
  
  Estimating optimal shrinkage intensity lambda (correlation matrix): 0.0479 
  
  
  Attaching package: 'Matrix'
  
  The following objects are masked from 'p
...[truncated]...
es the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "5" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_group_rrr(...) at test-cca_group_rrr.R:76:3
   2.   └─ccar3:::solve_group_rrr_cvxr(X, tilde_Y, groups, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  ── Error ('test-cca_rrr.R:68:3'): cca_rrr computes the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "10" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr(...) at test-cca_rrr.R:68:3
   2.   └─ccar3:::solve_rrr_cvxr(X, tilde_Y, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  Error:
  ! Test failures.
  Execution halted
WARNING r-patched-linux-x86_64

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-patched-linux-x86_64

tests

Running ‘testthat.R’ [82s/100s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
  > # * https://testthat.r-lib.org/articles/special-files.html
  > 
  > library(testthat)
  > library(ccar3)
  > 
  > test_check("ccar3")
  Loading required package: ggplot2
  Loading required package: lattice
  
   Permutation  1  out of  50  123456789
   Permutation  2  out of  50  123456789
   Permutation  3  out of  50  123456789
   Permutation  4  out of  50  123456789
   Permutation  5  out of  50  123456789
   Permutation  6  out of  50  123456789
   Permutation  7  out of  50  123456789
   Permutation  8  out of  50  123456789
   Permutation  9  out of  50  123456789
   Permutation  10  o
...[truncated]...
es the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "5" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_group_rrr(...) at test-cca_group_rrr.R:76:3
   2.   └─ccar3:::solve_group_rrr_cvxr(X, tilde_Y, groups, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  ── Error ('test-cca_rrr.R:68:3'): cca_rrr computes the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "10" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr(...) at test-cca_rrr.R:68:3
   2.   └─ccar3:::solve_rrr_cvxr(X, tilde_Y, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  Error:
  ! Test failures.
  Execution halted
WARNING r-release-linux-x86_64

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-release-linux-x86_64

tests

Running ‘testthat.R’ [82s/101s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
  > # * https://testthat.r-lib.org/articles/special-files.html
  > 
  > library(testthat)
  > library(ccar3)
  > 
  > test_check("ccar3")
  Loading required package: ggplot2
  Loading required package: lattice
  
   Permutation  1  out of  50  123456789
   Permutation  2  out of  50  123456789
   Permutation  3  out of  50  123456789
   Permutation  4  out of  50  123456789
   Permutation  5  out of  50  123456789
   Permutation  6  out of  50  123456789
   Permutation  7  out of  50  123456789
   Permutation  8  out of  50  123456789
   Permutation  9  out of  50  123456789
   Permutation  10  o
...[truncated]...
es the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "5" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_group_rrr(...) at test-cca_group_rrr.R:76:3
   2.   └─ccar3:::solve_group_rrr_cvxr(X, tilde_Y, groups, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  ── Error ('test-cca_rrr.R:68:3'): cca_rrr computes the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "10" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr(...) at test-cca_rrr.R:68:3
   2.   └─ccar3:::solve_rrr_cvxr(X, tilde_Y, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  Error:
  ! Test failures.
  Execution halted
WARNING r-release-windows-x86_64

dependencies in R code

Missing or unexported object: 'CVXR::solve'
ERROR r-release-windows-x86_64

tests

Running 'testthat.R' [88s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
  > # * https://testthat.r-lib.org/articles/special-files.html
  > 
  > library(testthat)
  > library(ccar3)
  > 
  > test_check("ccar3")
  Loading required package: ggplot2
  Loading required package: lattice
  
  Estimating optimal shrinkage intensity lambda.var (variance vector): 1 
  
  Estimating optimal shrinkage intensity lambda (correlation matrix): 0.0479 
  
  Estimating optimal shrinkage intensity lambda.var (variance vector): 1 
  
  Estimating optimal shrinkage intensity lambda (correlation matrix): 0.0479 
  
  
  Attaching package: 'Matrix'
  
  The following objects are masked from 'pa
...[truncated]...
es the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "5" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_group_rrr(...) at test-cca_group_rrr.R:76:3
   2.   └─ccar3:::solve_group_rrr_cvxr(X, tilde_Y, groups, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  ── Error ('test-cca_rrr.R:68:3'): cca_rrr computes the same solutions across solvers ──
  Error in `CVXR::Variable(p, q)`: Variable name "10" must be a string.
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr(...) at test-cca_rrr.R:68:3
   2.   └─ccar3:::solve_rrr_cvxr(X, tilde_Y, lambda, thresh_0 = thresh_0)
   3.     └─CVXR::Variable(p, q)
   4.       └─cli::cli_abort("Variable name {.val {as.character(name)}} must be a string.")
   5.         └─rlang::abort(...)
  
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  Error:
  ! Test failures.
  Execution halted

Check History

ERROR 5 OK · 0 NOTE · 0 WARNING · 9 ERROR · 0 FAILURE Mar 10, 2026
ERROR r-devel-linux-x86_64-debian-clang

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-devel-linux-x86_64-debian-gcc

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-devel-linux-x86_64-fedora-clang

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-devel-linux-x86_64-fedora-gcc

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-devel-macos-arm64

tests

Running ‘testthat.R’ [53s/43s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional 
...[truncated]...
  7.             ├─parallel::recvOneData(cl)
   8.             └─parallel:::recvOneData.SOCKcluster(cl)
   9.               └─base::unserialize(socklist[[n]])
  
  [ FAIL 5 | WARN 0 | SKIP 0 | PASS 101 ]
  Error:
  ! Test failures.
  Execution halted
ERROR r-devel-windows-x86_64

dependencies in R code

Missing or unexported object: 'CVXR::solve'
ERROR r-release-linux-x86_64

dependencies in R code

Missing or unexported object: ‘CVXR::solve’
ERROR r-release-windows-x86_64

dependencies in R code

Missing or unexported object: 'CVXR::solve'
ERROR r-oldrel-windows-x86_64

dependencies in R code

Missing or unexported object: 'CVXR::solve'

Dependency Network

Dependencies Reverse dependencies purrr magrittr tidyr dplyr foreach pracma corpcor matrixStats RSpectra caret ccar3

Version History

new 0.1.0 Mar 10, 2026