I use the function block.splsda for integration (mixOmics version 6.8.4). I notice that the response Y
is centered and scaled in the function internal_mint.block . Unless I’m mistaken, it is a bug because block.splsda selects linear combination of centered and scaled variables of blocks which are collinear to a linear combination of response variables.
In classical pls(X, Y) where both matrices are X and Y we center and scale each variable, whether there are dependent or independent variables, as you maximise the covariance between a linear combination of X variables (component u) and a linear combination of Y variables (component v).
PLS-DA is a special case of PLS, but here the outcome variable y is a categorical factor, which is then transformed into a dummy matrix (if you have 3 categories, then the dummy Y has 3 columns). Then we center and scale Y. Mint.splsda would fit into that framework too.
Here is a reference about PLS-DA and the link with PLS and why we do things that way: https://onlinelibrary.wiley.com/doi/abs/10.1002/cem.785
If you have other recent references too share, please pass it on and we can revise our algorithm, if appropriate!