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

507

Last 30 days

7299th

927

Last 90 days

927

Last year

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

CRAN Check Status

5 ERROR
9 OK
Show all 14 flavors
Flavor Status
r-devel-linux-x86_64-debian-clang OK
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 OK
r-oldrel-macos-arm64 OK
r-oldrel-macos-x86_64 OK
r-oldrel-windows-x86_64 OK
r-patched-linux-x86_64 OK
r-release-linux-x86_64 ERROR
r-release-macos-arm64 OK
r-release-macos-x86_64 OK
r-release-windows-x86_64 OK
Check details (18 non-OK)
OK r-devel-linux-x86_64-debian-clang

*


            
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’ [61s/77s]
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  out of  50  123456789
   Permutation  11  out of  50  123456789
   Permutation  12  out of  50  123456789
   Permutation  13  out of  50  123456789
   Permutation  14  out of  50  123456789
   Permutation  15  out of  50  123456789
   Permutation  16  out of  50  123456789
   Permutation  17  out of  50  123456789
   Permutation  18  out of  50  123456789
   Permutation  19  out of  50  123456789
   Permutation  20  out of  50  123456789
   Permutation  21  out of  50  123456789
   Permutation  22  out of  50  123456789
   Permutation  23  out of  50  123456789
   Permutation  24  out of  50  123456789
   Permutation  25  out of  50  123456789
   Permutation  26  out of  50  123456789
   Permutation  27  out of  50  123456789
   Permutation  28  out of  50  123456789
   Permutation  29  out of  50  123456789
   Permutation  30  out of  50  123456789
   Permutation  31  out of  50  123456789
   Permutation  32  out of  50  123456789
   Permutation  33  out of  50  123456789
   Permutation  34  out of  50  123456789
   Permutation  35  out of  50  123456789
   Permutation  36  out of  50  123456789
   Permutation  37  out of  50  123456789
   Permutation  38  out of  50  123456789
   Permutation  39  out of  50  123456789
   Permutation  40  out of  50  123456789
   Permutation  41  out of  50  123456789
   Permutation  42  out of  50  123456789
   Permutation  43  out of  50  123456789
   Permutation  44  out of  50  123456789
   Permutation  45  out of  50  123456789
   Permutation  46  out of  50  123456789
   Permutation  47  out of  50  123456789
   Permutation  48  out of  50  123456789
   Permutation  49  out of  50  123456789
   Permutation  50  out of  50  123456789
  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 'package:pracma':
  
      expm, lu, tril, triu
  
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Initial backend setup failed with error:  63 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  63 simultaneous processes spawned 
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Initial backend setup failed with error:  63 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  63 simultaneous processes spawned 
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Saving _problems/test-cca_group_rrr-79.R
  Initial backend setup failed with error:  63 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  63 simultaneous processes spawned 
  Initial backend setup failed with error:  63 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  63 simultaneous processes spawned 
  [1] "Done ADMM"
  Saving _problems/test-cca_rrr-70.R
  Initial backend setup failed with error:  63 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  63 simultaneous processes spawned 
  Initial backend setup failed with error:  63 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  63 simultaneous processes spawned 
  [1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  
  iter: 10 delta: 0.001831906
  iter: 20 delta: 0.0002497733     ADMM converged in  28  iterations[1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
       ADMM converged in  9  iterations[1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  [1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  Initial backend setup failed with error:  63 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  63 simultaneous processes spawned 
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  
  ══ Failed tests ════════════════════════════════════════════════════════════════
  ── Error ('test-cca_group_rrr.R:76:3'): cca_group computes 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’ [136s/179s]
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  out of  50  123456789
   Permutation  11  out of  50  123456789
   Permutation  12  out of  50  123456789
   Permutation  13  out of  50  123456789
   Permutation  14  out of  50  123456789
   Permutation  15  out of  50  123456789
   Permutation  16  out of  50  123456789
   Permutation  17  out of  50  123456789
   Permutation  18  out of  50  123456789
   Permutation  19  out of  50  123456789
   Permutation  20  out of  50  123456789
   Permutation  21  out of  50  123456789
   Permutation  22  out of  50  123456789
   Permutation  23  out of  50  123456789
   Permutation  24  out of  50  123456789
   Permutation  25  out of  50  123456789
   Permutation  26  out of  50  123456789
   Permutation  27  out of  50  123456789
   Permutation  28  out of  50  123456789
   Permutation  29  out of  50  123456789
   Permutation  30  out of  50  123456789
   Permutation  31  out of  50  123456789
   Permutation  32  out of  50  123456789
   Permutation  33  out of  50  123456789
   Permutation  34  out of  50  123456789
   Permutation  35  out of  50  123456789
   Permutation  36  out of  50  123456789
   Permutation  37  out of  50  123456789
   Permutation  38  out of  50  123456789
   Permutation  39  out of  50  123456789
   Permutation  40  out of  50  123456789
   Permutation  41  out of  50  123456789
   Permutation  42  out of  50  123456789
   Permutation  43  out of  50  123456789
   Permutation  44  out of  50  123456789
   Permutation  45  out of  50  123456789
   Permutation  46  out of  50  123456789
   Permutation  47  out of  50  123456789
   Permutation  48  out of  50  123456789
   Permutation  49  out of  50  123456789
   Permutation  50  out of  50  123456789
  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 'package:pracma':
  
      expm, lu, tril, triu
  
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Saving _problems/test-cca_group_rrr-79.R
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  [1] "Done ADMM"
  Saving _problems/test-cca_rrr-70.R
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  [1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  
  iter: 10 delta: 0.001831906
  iter: 20 delta: 0.0002497733     ADMM converged in  28  iterations[1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
       ADMM converged in  9  iterations[1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  [1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  
  ══ Failed tests ════════════════════════════════════════════════════════════════
  ── Error ('test-cca_group_rrr.R:76:3'): cca_group computes 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’ [135s/170s]
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  out of  50  123456789
   Permutation  11  out of  50  123456789
   Permutation  12  out of  50  123456789
   Permutation  13  out of  50  123456789
   Permutation  14  out of  50  123456789
   Permutation  15  out of  50  123456789
   Permutation  16  out of  50  123456789
   Permutation  17  out of  50  123456789
   Permutation  18  out of  50  123456789
   Permutation  19  out of  50  123456789
   Permutation  20  out of  50  123456789
   Permutation  21  out of  50  123456789
   Permutation  22  out of  50  123456789
   Permutation  23  out of  50  123456789
   Permutation  24  out of  50  123456789
   Permutation  25  out of  50  123456789
   Permutation  26  out of  50  123456789
   Permutation  27  out of  50  123456789
   Permutation  28  out of  50  123456789
   Permutation  29  out of  50  123456789
   Permutation  30  out of  50  123456789
   Permutation  31  out of  50  123456789
   Permutation  32  out of  50  123456789
   Permutation  33  out of  50  123456789
   Permutation  34  out of  50  123456789
   Permutation  35  out of  50  123456789
   Permutation  36  out of  50  123456789
   Permutation  37  out of  50  123456789
   Permutation  38  out of  50  123456789
   Permutation  39  out of  50  123456789
   Permutation  40  out of  50  123456789
   Permutation  41  out of  50  123456789
   Permutation  42  out of  50  123456789
   Permutation  43  out of  50  123456789
   Permutation  44  out of  50  123456789
   Permutation  45  out of  50  123456789
   Permutation  46  out of  50  123456789
   Permutation  47  out of  50  123456789
   Permutation  48  out of  50  123456789
   Permutation  49  out of  50  123456789
   Permutation  50  out of  50  123456789
  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 'package:pracma':
  
      expm, lu, tril, triu
  
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Saving _problems/test-cca_group_rrr-79.R
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  [1] "Done ADMM"
  Saving _problems/test-cca_rrr-70.R
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  [1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  
  iter: 10 delta: 0.001831906
  iter: 20 delta: 0.0002497733     ADMM converged in  28  iterations[1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
       ADMM converged in  9  iterations[1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  [1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  Initial backend setup failed with error:  23 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  23 simultaneous processes spawned 
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  
  ══ Failed tests ════════════════════════════════════════════════════════════════
  ── Error ('test-cca_group_rrr.R:76:3'): cca_group computes 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
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 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  out of  50  123456789
   Permutation  11  out of  50  123456789
   Permutation  12  out of  50  123456789
   Permutation  13  out of  50  123456789
   Permutation  14  out of  50  123456789
   Permutation  15  out of  50  123456789
   Permutation  16  out of  50  123456789
   Permutation  17  out of  50  123456789
   Permutation  18  out of  50  123456789
   Permutation  19  out of  50  123456789
   Permutation  20  out of  50  123456789
   Permutation  21  out of  50  123456789
   Permutation  22  out of  50  123456789
   Permutation  23  out of  50  123456789
   Permutation  24  out of  50  123456789
   Permutation  25  out of  50  123456789
   Permutation  26  out of  50  123456789
   Permutation  27  out of  50  123456789
   Permutation  28  out of  50  123456789
   Permutation  29  out of  50  123456789
   Permutation  30  out of  50  123456789
   Permutation  31  out of  50  123456789
   Permutation  32  out of  50  123456789
   Permutation  33  out of  50  123456789
   Permutation  34  out of  50  123456789
   Permutation  35  out of  50  123456789
   Permutation  36  out of  50  123456789
   Permutation  37  out of  50  123456789
   Permutation  38  out of  50  123456789
   Permutation  39  out of  50  123456789
   Permutation  40  out of  50  123456789
   Permutation  41  out of  50  123456789
   Permutation  42  out of  50  123456789
   Permutation  43  out of  50  123456789
   Permutation  44  out of  50  123456789
   Permutation  45  out of  50  123456789
   Permutation  46  out of  50  123456789
   Permutation  47  out of  50  123456789
   Permutation  48  out of  50  123456789
   Permutation  49  out of  50  123456789
   Permutation  50  out of  50  123456789
  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 'package:pracma':
  
      expm, lu, tril, triu
  
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Saving _problems/test-cca_graph_rrr_cv-49.R
  Saving _problems/test-cca_graph_rrr_cv-77.R
  Saving _problems/test-cca_group_rrr_cv-47.R
  Saving _problems/test-cca_group_rrr_cv-75.R
  [1] "Done ADMM"
  [1] "Done CVXR"
  Saving _problems/test-cca_rrr_cv-71.R
  [1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  
  iter: 10 delta: 0.001831906
  iter: 20 delta: 0.0002497733     ADMM converged in  28  iterations[1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
       ADMM converged in  9  iterations[1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  [1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  [ FAIL 5 | WARN 0 | SKIP 0 | PASS 101 ]
  
  ══ Failed tests ════════════════════════════════════════════════════════════════
  ── Error ('test-cca_graph_rrr_cv.R:49:3'): cca_graph_rrr_cv can run in parallel ──
  Error in `unserialize(socklist[[n]])`: error reading from connection
  Backtrace:
      ▆
   1. └─ccar3::cca_graph_rrr_cv(...) at test-cca_graph_rrr_cv.R:49:3
   2.   └─foreach(lambda = lambdas, .combine = rbind) %dopar% ...
   3.     └─e$fun(obj, substitute(ex), parent.frame(), e$data)
   4.       └─parallel::clusterApplyLB(cl, argsList, evalWrapper)
   5.         └─parallel:::dynamicClusterApply(cl, fun, length(x), argfun)
   6.           └─parallel:::recvOneResult(cl)
   7.             ├─parallel::recvOneData(cl)
   8.             └─parallel:::recvOneData.SOCKcluster(cl)
   9.               └─base::unserialize(socklist[[n]])
  ── Error ('test-cca_graph_rrr_cv.R:77:3'): cca_graph_rrr_cv returns the correct answer ──
  Error in `unserialize(socklist[[n]])`: error reading from connection
  Backtrace:
      ▆
   1. └─ccar3::cca_graph_rrr_cv(...) at test-cca_graph_rrr_cv.R:77:3
   2.   └─foreach(lambda = lambdas, .combine = rbind) %dopar% ...
   3.     └─e$fun(obj, substitute(ex), parent.frame(), e$data)
   4.       └─parallel::clusterApplyLB(cl, argsList, evalWrapper)
   5.         └─parallel:::dynamicClusterApply(cl, fun, length(x), argfun)
   6.           └─parallel:::recvOneResult(cl)
   7.             ├─parallel::recvOneData(cl)
   8.             └─parallel:::recvOneData.SOCKcluster(cl)
   9.               └─base::unserialize(socklist[[n]])
  ── Error ('test-cca_group_rrr_cv.R:47:3'): cca_group_rrr_cv can run in parallel ──
  Error in `unserialize(socklist[[n]])`: error reading from connection
  Backtrace:
      ▆
   1. └─ccar3::cca_group_rrr_cv(...) at test-cca_group_rrr_cv.R:47:3
   2.   └─... %dopar% run_cv(lambda)
   3.     └─e$fun(obj, substitute(ex), parent.frame(), e$data)
   4.       └─parallel::clusterApplyLB(cl, argsList, evalWrapper)
   5.         └─parallel:::dynamicClusterApply(cl, fun, length(x), argfun)
   6.           └─parallel:::recvOneResult(cl)
   7.             ├─parallel::recvOneData(cl)
   8.             └─parallel:::recvOneData.SOCKcluster(cl)
   9.               └─base::unserialize(socklist[[n]])
  ── Error ('test-cca_group_rrr_cv.R:72:3'): cca_group_rrr_cv returns the correct answer ──
  Error in `unserialize(socklist[[n]])`: error reading from connection
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr_cv(...) at test-cca_group_rrr_cv.R:72:3
   2.   └─foreach(lambda = lambdas, .combine = rbind) %dopar% ...
   3.     └─e$fun(obj, substitute(ex), parent.frame(), e$data)
   4.       └─parallel::clusterApplyLB(cl, argsList, evalWrapper)
   5.         └─parallel:::dynamicClusterApply(cl, fun, length(x), argfun)
   6.           └─parallel:::recvOneResult(cl)
   7.             ├─parallel::recvOneData(cl)
   8.             └─parallel:::recvOneData.SOCKcluster(cl)
   9.               └─base::unserialize(socklist[[n]])
  ── Error ('test-cca_rrr_cv.R:68:3'): cca_rrr_cv returns the correct answer ─────
  Error in `unserialize(socklist[[n]])`: error reading from connection
  Backtrace:
      ▆
   1. └─ccar3::cca_rrr_cv(...) at test-cca_rrr_cv.R:68:3
   2.   └─foreach(lambda = lambdas, .combine = rbind) %dopar% ...
   3.     └─e$fun(obj, substitute(ex), parent.frame(), e$data)
   4.       └─parallel::clusterApplyLB(cl, argsList, evalWrapper)
   5.         └─parallel:::dynamicClusterApply(cl, fun, length(x), argfun)
   6.           └─parallel:::recvOneResult(cl)
   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
OK r-devel-windows-x86_64

*


            
OK r-oldrel-macos-arm64

*


            
OK r-oldrel-macos-x86_64

*


            
OK r-oldrel-windows-x86_64

*


            
OK r-patched-linux-x86_64

*


            
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’ [87s/108s]
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  out of  50  123456789
   Permutation  11  out of  50  123456789
   Permutation  12  out of  50  123456789
   Permutation  13  out of  50  123456789
   Permutation  14  out of  50  123456789
   Permutation  15  out of  50  123456789
   Permutation  16  out of  50  123456789
   Permutation  17  out of  50  123456789
   Permutation  18  out of  50  123456789
   Permutation  19  out of  50  123456789
   Permutation  20  out of  50  123456789
   Permutation  21  out of  50  123456789
   Permutation  22  out of  50  123456789
   Permutation  23  out of  50  123456789
   Permutation  24  out of  50  123456789
   Permutation  25  out of  50  123456789
   Permutation  26  out of  50  123456789
   Permutation  27  out of  50  123456789
   Permutation  28  out of  50  123456789
   Permutation  29  out of  50  123456789
   Permutation  30  out of  50  123456789
   Permutation  31  out of  50  123456789
   Permutation  32  out of  50  123456789
   Permutation  33  out of  50  123456789
   Permutation  34  out of  50  123456789
   Permutation  35  out of  50  123456789
   Permutation  36  out of  50  123456789
   Permutation  37  out of  50  123456789
   Permutation  38  out of  50  123456789
   Permutation  39  out of  50  123456789
   Permutation  40  out of  50  123456789
   Permutation  41  out of  50  123456789
   Permutation  42  out of  50  123456789
   Permutation  43  out of  50  123456789
   Permutation  44  out of  50  123456789
   Permutation  45  out of  50  123456789
   Permutation  46  out of  50  123456789
   Permutation  47  out of  50  123456789
   Permutation  48  out of  50  123456789
   Permutation  49  out of  50  123456789
   Permutation  50  out of  50  123456789
  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 'package:pracma':
  
      expm, lu, tril, triu
  
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Initial backend setup failed with error:  31 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  31 simultaneous processes spawned 
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Initial backend setup failed with error:  31 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  31 simultaneous processes spawned 
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Error in fold 1: a dimension is zero
  Error in fold 2: a dimension is zero
  Error in fold 3: a dimension is zero
  Saving _problems/test-cca_group_rrr-79.R
  Initial backend setup failed with error:  31 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  31 simultaneous processes spawned 
  Initial backend setup failed with error:  31 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  31 simultaneous processes spawned 
  [1] "Done ADMM"
  Saving _problems/test-cca_rrr-70.R
  Initial backend setup failed with error:  31 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  31 simultaneous processes spawned 
  Initial backend setup failed with error:  31 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  31 simultaneous processes spawned 
  [1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  
  iter: 10 delta: 0.001831906
  iter: 20 delta: 0.0002497733     ADMM converged in  28  iterations[1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
       ADMM converged in  9  iterations[1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  [1] "We have:"
  [1] 100   1   5
  [1] "--------------------------------------"
  [1] "Generating data ..."
  [1] "Number of non zeros is: 5"
  [1] "Data generated."
  [1] "--------------------------------------"
  Initial backend setup failed with error:  31 simultaneous processes spawned 
  Attempting fallback PSOCK backend...
  PSOCK setup also failed:  31 simultaneous processes spawned 
  [ FAIL 2 | WARN 7 | SKIP 0 | PASS 112 ]
  
  ══ Failed tests ════════════════════════════════════════════════════════════════
  ── Error ('test-cca_group_rrr.R:76:3'): cca_group computes 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
OK r-release-macos-arm64

*


            
OK r-release-macos-x86_64

*


            
OK r-release-windows-x86_64

*


            

Check History

ERROR 9 OK · 0 NOTE · 0 WARNING · 5 ERROR · 0 FAILURE Mar 9, 2026
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 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(
ERROR r-release-linux-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 9, 2026