
Generate Synthetic Poisson Clones for PET Data
Source:R/generatePoissonClones.R
generatePoissonClones.RdGenerates synthetic clones of a PET data matrix by adding Poisson-distributed noise to each non-zero voxel. This approach helps address the limitations of functional data analysis (FDA) in single-subject versus group (1 vs. Group) setups, where a single subject lacks sufficient variability to reliably estimate Simultaneous Confidence Corridors (SCCs).
Value
A numeric matrix with numClones rows, each representing a noisy version
of originalMatrix with Poisson noise added.
Details
Values equal to
0remain unchanged to preserve background regions.NAvalues are replaced with0before adding noise.Poisson noise is applied only to positive values, scaled by
lambdaFactor.Enables valid SCC estimation in single-subject settings by artificially increasing sample size.
Examples
# Load example input matrix for Poisson cloning
data("generatePoissonClonesExample", package = "neuroSCC")
# Select 10 random voxel positions for display
set.seed(123)
sampledCols <- sample(ncol(generatePoissonClonesExample), 10)
# Generate 1 synthetic clone
clones <- generatePoissonClones(generatePoissonClonesExample, numClones = 1, lambdaFactor = 0.25)
# Show voxel intensity values after cloning
clones[, sampledCols]
#> [1] 12 0 0 5 0 0 0 7 10 0