mixOmicsTeam / mixOmics

Development repository for the Bioconductor package 'mixOmics '
http://mixomics.org/
153 stars 51 forks source link

Error in tune.block.splsda since latest update #241

Closed StefPN closed 1 year ago

StefPN commented 1 year ago

Please follow all the steps described at https://mixomics-users.discourse.group/t/reproducible-example-to-clarify-issues/470 and next fill in the items below:


🐞 Describe the bug:


πŸ” **R version 4.1.2 (2021-11-01) Platform: x86_64-apple-darwin17.0 (64-bit) Running under: macOS Monterey 12.5.1

Matrix products: default LAPACK: /Library/Frameworks/R.framework/Versions/4.1/Resources/lib/libRlapack.dylib

locale: [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages: [1] grid stats graphics grDevices utils datasets methods base

other attached packages: [1] igraph_1.3.4 chemometrics_1.4.2 rpart_4.1-15
[4] zCompositions_1.4.0 truncnorm_1.0-8 NADA_1.6-1.1
[7] survival_3.2-13 RColorBrewer_1.1-3 VennDiagram_1.7.1
[10] futile.logger_1.4.3 knitr_1.37 doSNOW_1.0.19
[13] snow_0.4-4 iterators_1.0.13 foreach_1.5.1
[16] mixOmics_6.19.4 ggplot2_3.3.6 lattice_0.20-45
[19] MASS_7.3-54
**


πŸ€” Expected behavior:


πŸ’‘ Possible solution:

Max-Bladen commented 1 year ago

No information provided. I have no idea what to do with this @StefPN

StefPN commented 1 year ago

Hej, I understand. It is very strange. I filled in everything but it is not showing up here. I tried to run some old code that has worked before my update: tune.BBMPLSfull = mixOmics::tune.block.splsda(X = X, Y = Y, ncomp = 3,auc = TRUE, dist = 'centroids.dist', progressBar = FALSE, measure = "BER", test.keepX = test.keepX, design = design, validation = 'loo') and now I get the following error: Error in 1:n : NA/NaN argument Neither X or Y contain NAs. What could be the problem? As I said, it worked with the same input before. I very much appreciate your help! /Stef

StefPN commented 1 year ago

I can add the following: block.plsda and perf on the very same dataset works: MyResult.diabloPLSfull <- block.plsda(X, Y, ncomp=5, design=MyDesignPLSfull) perf.diabloPLSfull = perf(MyResult.diabloPLSfull, validation = 'loo', cpus=6) So I just cannot figure out why tune.block.plsda on the very same input is throwing me the error Error in 1:n : NA/NaN argument. Neither test.keepX nor design contain any NAs.

Max-Bladen commented 1 year ago

This is an issue which has been resolved in the past (refer to #215). Unfortunately, the changes I made have yet to be deployed to the BioConductor build of mixOmics. Hence, install the version of the package via github (have a look at the install_github() from the devtools package)