Function to perform a multiblock partial least squares (PLS) of several explanatory blocks \((X_1, \dots, X_k)\) defined as an object of class ktab
, to explain a dependent dataset $Y$ defined as an object of class dudi
mbpls(dudiY, ktabX, scale = TRUE, option = c("uniform", "none"), scannf = TRUE, nf = 2)
A list containing the following components is returned:
the matching call
data frame of dependent variables centered, eventually scaled (if scale=TRUE) and weighted (if option="uniform")
data frame of explanatory variables centered, eventually scaled (if scale=TRUE) and weighted (if option="uniform")
data frame useful to manage graphical outputs
numeric value indicating the number of kept dimensions
numeric vector of row weights
numeric vector of column weighs for the explanalatory dataset
vector of the numbers of variables in each explanatory dataset
maximum rank of the analysis
numeric vector containing the eigenvalues
matrix of the global components associated with the whole explanatory dataset (scores of the individuals)
matrix of the components associated with the dependent dataset
matrix of the variable loadings associated with the dependent dataset
squared covariance between lY and TlX
matrix containing the partial loadings associated with each explanatory dataset (unit norm)
matrix containing the partial components associated with each explanatory dataset
matrix of the regression coefficients of the whole explanatory dataset onto the global components
list of matrices of the regression coefficients of the whole explanatory dataset onto the dependent dataset
block importances for a given dimension
cumulated block importances for a given number of dimensions
variable importances for a given dimension
cumulated variable importances for a given number of dimensions
an object of class dudi
containing the dependent variables
an object of class ktab
containing the blocks of
explanatory variables
logical value indicating whether the explanatory variables should be standardized
an option for the block weighting. If uniform
,
the block weight is equal to $1/K$ for \((X_1, \dots, X_K)\) and to
$1$ for $X$ and $Y$. If none
, the block weight is equal to the block inertia
logical value indicating whether the eigenvalues bar plot should be displayed
integer indicating the number of kept dimensions
Stéphanie Bougeard (stephanie.bougeard@anses.fr) and Stéphane Dray (stephane.dray@univ-lyon1.fr)
Bougeard, S., Qannari, E.M., Lupo, C. and Hanafi, M. (2011). From multiblock partial least squares to multiblock redundancy analysis. A continuum approach. Informatica, 22(1), 11-26
Bougeard, S. and Dray S. (2018) Supervised Multiblock Analysis in R with the ade4 Package. Journal of Statistical Software, 86 (1), 1-17. tools:::Rd_expr_doi("10.18637/jss.v086.i01")
mbpls
, testdim.multiblock
,
randboot.multiblock
data(chickenk)
Mortality <- chickenk[[1]]
dudiY.chick <- dudi.pca(Mortality, center = TRUE, scale = TRUE, scannf =
FALSE)
ktabX.chick <- ktab.list.df(chickenk[2:5])
resmbpls.chick <- mbpls(dudiY.chick, ktabX.chick, scale = TRUE,
option = "uniform", scannf = FALSE)
summary(resmbpls.chick)
if(adegraphicsLoaded())
plot(resmbpls.chick)
Run the code above in your browser using DataLab