PCA-GCA is a methods which aims at estimating subspaces of common, local and distinct variation from two or more blocks.
pcagca(
X,
commons = 2,
auto = TRUE,
auto.par = list(explVarLim = 40, rLim = 0.8),
manual.par = list(ncomp = 0, ncommon = 0),
tol = 10^-12
)
list
of input blocks
numeric
giving the highest number of blocks to combine when calculating local or common scores.
logical
indicating if automatic choice of complexities should be used.
named list
setting limits for automatic choice of complexities.
named list
for manual choice of blocks. The list consists of ncomp
which indicates the number of components to extract from each block and ncommon
which is the corresponding for choosing the block combinations (local/common). For the latter, use unique_combos(n_blocks, commons) to see order of local/common blocks. Component numbers will be reduced if simpler models give better predictions. See example.
numeric
tolerance for component inclusion (singular values).
multiblock
object including relevant scores and loadings. Relevant plotting functions: multiblock_plots
and result functions: multiblock_results
.
The name PCA-GCA comes from the process of first applying PCA to each block, then using GCA to estimate local and common components, and finally orthogonalising the block-wise scores on the local/common ones and re-estimating these to obtain distinct components. The procedure is highly similar to the supervised method PO-PLS, where the PCA steps are exchanged with PLS.
Smilde, A., M<U+00E5>ge, I., Naes, T., Hankemeier, T.,Lips, M., Kiers, H., Acar, E., and Bro, R.(2017). Common and distinct components in data fusion. Journal of Chemometrics, 31(7), e2900.
Overviews of available methods, multiblock
, and methods organised by main structure: basic
, unsupervised
, asca
, supervised
and complex
.
Common functions for computation and extraction of results and plotting are found in multiblock_results
and multiblock_plots
, respectively.
# NOT RUN {
data(potato)
potList <- as.list(potato[c(1,2,9)])
pot.pcagca <- pcagca(potList)
plot(scores(pot.pcagca, block=2), comps=1, labels="names")
# }
Run the code above in your browser using DataLab