PO2PLS: Perform O2-PLS with two-way orthogonal corrections

View source: R/PO2PLS_functions.R

PO2PLSR Documentation

Perform O2-PLS with two-way orthogonal corrections

Description

NOTE THAT THIS FUNCTION DOES NOT CENTER NOR SCALES THE MATRICES! Any normalization you will have to do yourself. It is best practice to at least center the variables though.

Usage

PO2PLS(
  X,
  Y,
  r,
  rx,
  ry,
  steps = 1e+05,
  tol = 1e-06,
  init_param = c("o2m", "random", "unit"),
  orth_type = "SVD",
  random_restart = FALSE,
  homogen_joint = FALSE,
  null_B = FALSE,
  verbose = TRUE
)

Arguments

X

Numeric matrix. Other types will be coerced to matrix with as.matrix (if this is possible)

Y

Numeric matrix. Other types will be coerced to matrix with as.matrix (if this is possible)

r

Positive integer. Number of joint PLS components. Must be positive!

rx

Non-negative integer. Number of orthogonal components in X. Can be 0

ry

Non-negative integer. Number of orthogonal components in Y. Can be 0

steps

Positive integer. Number of EM steps to perform

tol

Positive double. Tolerance of deciding if the likelihood increment is small enough to conclude convergence.

init_param

Character. Should be one of "o2m", "random" or "unit". Specifies which kind of parameters should be generated.

orth_type

Character. One of "SVD" or "QR". Best left set to "SVD"

random_restart

Not to be used

homogen_joint

Boolean. Should U=T be assumed? For simulation purposes to mimic SIFA.

null_B

Boolean. Should B=0 be assumed? For simulation purposes

verbose

Boolean. Should output about time and convergence state be printed?

Value

A list with

parameters

Estimated PO2PLS parameters

latent_vars

Conditional expectation and variances of latent variables

meta_data

Meta data to be used for print and summary


selbouhaddani/PO2PLS documentation built on Feb. 23, 2024, 5:25 a.m.