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