🐞 Describe the bug:
The auroc() function raises an ambiguous error when a mint.block.(s)plsda object is passed to it. This is despite there being the auroc.mint.block.plsda() function - implying that auroc() should function in this scenario.
library(mixOmics)
data(breast.TCGA)
mrna <- rbind(breast.TCGA$data.train$mrna, breast.TCGA$data.test$mrna)
mirna <- rbind(breast.TCGA$data.train$mirna, breast.TCGA$data.test$mirna)
X <- list(mrna = mrna, mirna = mirna)
Y <- c(breast.TCGA$data.train$subtype, breast.TCGA$data.test$subtype)
study <- c(rep("study1",150), rep("study2",70))
m.b.model <- mint.block.splsda(X, Y, study=study, design="full")
auroc(m.b.model)
#> Warning in max(cumDim[cumDim <= lstats]): no non-missing arguments to max;
#> returning -Inf
#> Error in array(STATS, dims[perm]): 'data' must be of a vector type, was 'NULL'
🤔 Expected behavior:
The auroc() function should behave normally and not raise an error at this point.
💡 Possible solution:
Likely a result of the mean_centering_per_study() function returning center and scale attributes for each study and not the global levels. When auroc() calls predict(), the global center and scale attributes can't be found and an error is raised
🐞 Describe the bug: The
auroc()
function raises an ambiguous error when amint.block.(s)plsda
object is passed to it. This is despite there being theauroc.mint.block.plsda()
function - implying thatauroc()
should function in this scenario.🔍 reprex results from reproducible example including sessioninfo():
Created on 2022-09-26 with reprex v2.0.2
Session info
``` r sessioninfo::session_info() #> ─ Session info ─────────────────────────────────────────────────────────────── #> setting value #> version R version 4.2.1 (2022-06-23 ucrt) #> os Windows 10 x64 (build 19044) #> system x86_64, mingw32 #> ui RTerm #> language (EN) #> collate English_United States.utf8 #> ctype English_United States.utf8 #> tz Australia/Sydney #> date 2022-09-26 #> pandoc 2.18 @ D:/Programs/Work Programs/RStudio/bin/quarto/bin/tools/ (via rmarkdown) #> #> ─ Packages ─────────────────────────────────────────────────────────────────── #> package * version date (UTC) lib source #> assertthat 0.2.1 2019-03-21 [1] CRAN (R 4.2.1) #> BiocParallel 1.30.3 2022-06-07 [1] Bioconductor #> cli 3.3.0 2022-04-25 [1] CRAN (R 4.2.1) #> codetools 0.2-18 2020-11-04 [1] CRAN (R 4.2.1) #> colorspace 2.0-3 2022-02-21 [1] CRAN (R 4.2.1) #> corpcor 1.6.10 2021-09-16 [1] CRAN (R 4.2.0) #> DBI 1.1.3 2022-06-18 [1] CRAN (R 4.2.1) #> digest 0.6.29 2021-12-01 [1] CRAN (R 4.2.1) #> dplyr 1.0.9 2022-04-28 [1] CRAN (R 4.2.1) #> ellipse 0.4.3 2022-05-31 [1] CRAN (R 4.2.1) #> evaluate 0.16 2022-08-09 [1] CRAN (R 4.2.1) #> fansi 1.0.3 2022-03-24 [1] CRAN (R 4.2.1) #> fastmap 1.1.0 2021-01-25 [1] CRAN (R 4.2.1) #> fs 1.5.2 2021-12-08 [1] CRAN (R 4.2.1) #> generics 0.1.3 2022-07-05 [1] CRAN (R 4.2.1) #> ggplot2 * 3.3.6 2022-05-03 [1] CRAN (R 4.2.1) #> ggrepel 0.9.1 2021-01-15 [1] CRAN (R 4.2.1) #> glue 1.6.2 2022-02-24 [1] CRAN (R 4.2.1) #> gridExtra 2.3 2017-09-09 [1] CRAN (R 4.2.1) #> gtable 0.3.1 2022-09-01 [1] CRAN (R 4.2.1) #> highr 0.9 2021-04-16 [1] CRAN (R 4.2.1) #> htmltools 0.5.3 2022-07-18 [1] CRAN (R 4.2.1) #> igraph 1.3.4 2022-07-19 [1] CRAN (R 4.2.1) #> knitr 1.40 2022-08-24 [1] CRAN (R 4.2.1) #> lattice * 0.20-45 2021-09-22 [1] CRAN (R 4.2.1) #> lifecycle 1.0.2 2022-09-09 [1] CRAN (R 4.2.1) #> magrittr 2.0.3 2022-03-30 [1] CRAN (R 4.2.1) #> MASS * 7.3-58.1 2022-08-03 [1] CRAN (R 4.2.1) #> Matrix 1.4-1 2022-03-23 [1] CRAN (R 4.2.1) #> matrixStats 0.62.0 2022-04-19 [1] CRAN (R 4.2.1) #> mixOmics * 6.20.0 2022-04-26 [1] Bioconductor (R 4.2.0) #> munsell 0.5.0 2018-06-12 [1] CRAN (R 4.2.1) #> pillar 1.8.1 2022-08-19 [1] CRAN (R 4.2.1) #> pkgconfig 2.0.3 2019-09-22 [1] CRAN (R 4.2.1) #> plyr 1.8.7 2022-03-24 [1] CRAN (R 4.2.1) #> purrr 0.3.4 2020-04-17 [1] CRAN (R 4.2.1) #> R.cache 0.16.0 2022-07-21 [1] CRAN (R 4.2.1) #> R.methodsS3 1.8.2 2022-06-13 [1] CRAN (R 4.2.0) #> R.oo 1.25.0 2022-06-12 [1] CRAN (R 4.2.0) #> R.utils 2.12.0 2022-06-28 [1] CRAN (R 4.2.1) #> R6 2.5.1 2021-08-19 [1] CRAN (R 4.2.1) #> rARPACK 0.11-0 2016-03-10 [1] CRAN (R 4.2.1) #> RColorBrewer 1.1-3 2022-04-03 [1] CRAN (R 4.2.0) #> Rcpp 1.0.9 2022-07-08 [1] CRAN (R 4.2.1) #> reprex 2.0.2 2022-08-17 [1] CRAN (R 4.2.1) #> reshape2 1.4.4 2020-04-09 [1] CRAN (R 4.2.1) #> rlang 1.0.5 2022-08-31 [1] CRAN (R 4.2.1) #> rmarkdown 2.16 2022-08-24 [1] CRAN (R 4.2.1) #> RSpectra 0.16-1 2022-04-24 [1] CRAN (R 4.2.1) #> rstudioapi 0.14 2022-08-22 [1] CRAN (R 4.2.1) #> scales 1.2.1 2022-08-20 [1] CRAN (R 4.2.1) #> sessioninfo 1.2.2 2021-12-06 [1] CRAN (R 4.2.1) #> stringi 1.7.8 2022-07-11 [1] CRAN (R 4.2.1) #> stringr 1.4.1 2022-08-20 [1] CRAN (R 4.2.1) #> styler 1.7.0 2022-03-13 [1] CRAN (R 4.2.1) #> tibble 3.1.8 2022-07-22 [1] CRAN (R 4.2.1) #> tidyr 1.2.0 2022-02-01 [1] CRAN (R 4.2.1) #> tidyselect 1.1.2 2022-02-21 [1] CRAN (R 4.2.1) #> utf8 1.2.2 2021-07-24 [1] CRAN (R 4.2.1) #> vctrs 0.4.1 2022-04-13 [1] CRAN (R 4.2.1) #> withr 2.5.0 2022-03-03 [1] CRAN (R 4.2.1) #> xfun 0.32 2022-08-10 [1] CRAN (R 4.2.1) #> yaml 2.3.5 2022-02-21 [1] CRAN (R 4.2.0) #> #> [1] D:/Programs/Work Programs/R-4.2.1/library #> #> ────────────────────────────────────────────────────────────────────────────── ```🤔 Expected behavior: The
auroc()
function should behave normally and not raise an error at this point.💡 Possible solution: Likely a result of the
mean_centering_per_study()
function returningcenter
andscale
attributes for each study and not the global levels. Whenauroc()
callspredict()
, the globalcenter
andscale
attributes can't be found and an error is raised