defaultPatternFitters: Default Pattern Fitters for SIMPLICA

View source: R/defaultPatternFitters.R

defaultPatternFittersR Documentation

Default Pattern Fitters for SIMPLICA

Description

Returns a list of default pattern fitting functions used in SIMPLICA. These fitters estimate different types of patterns (constant, additive, multiplicative) from matrix data using specified training cells.

Usage

defaultPatternFitters()

Details

Each fitter function takes two arguments:

  • mat: Numeric matrix containing the data to fit

  • trainMask: Logical matrix indicating which cells to use for training

All fitters return a fitted matrix of the same dimensions as the input.

Value

A named list containing pattern fitting functions:

  • constant: Fits a constant value (mean of training data)

  • additive: Fits an additive pattern using additiveMatrixFitter

  • multiplicative: Fits a multiplicative pattern using multiplicativeMatrixFitter

Examples

# Retrieve default pattern fitters
fitters <- defaultPatternFitters()

# Add a custom diagonal pattern fitter
diagonalFitter <- function(mat, trainMask) {
  # Extract diagonal values from training data
  minDim <- min(nrow(mat), ncol(mat))
  diagIndices <- cbind(1:minDim, 1:minDim)
  # Only use diagonal elements that are in the training mask
  validDiag <- trainMask[diagIndices]
  if (any(validDiag)) {
    diagVal <- mean(mat[diagIndices][validDiag])
  } else {
    diagVal <- mean(mat[trainMask])  # fallback to overall mean
  }
  matrix(diagVal, nrow = nrow(mat), ncol = ncol(mat))
}

# Extend the list with your own pattern
fitters$diagonal <- diagonalFitter


SIMPLICA documentation built on Sept. 11, 2025, 1:08 a.m.