Run PCA on a BANKSY matrix.
runBanksyPCA(
se,
use_agf = FALSE,
lambda = 0.2,
npcs = 20L,
assay_name = NULL,
scale = TRUE,
group = NULL,
M = NULL,
seed = NULL
)
A SpatialExperiment
,
SingleCellExperiment
or SummarizedExperiment
object with computeBanksy
ran.
A logical vector specifying whether to use the AGF for computing principal components.
A numeric vector in \(\in [0,1]\) specifying a spatial weighting parameter. Larger values (e.g. 0.8) incorporate more spatial neighborhood and find spatial domains, while smaller values (e.g. 0.2) perform spatial cell-typing.
An integer scalar specifying the number of principal components to compute.
A string scalar specifying the name of the assay used in
computeBanksy
.
A logical scalar specifying whether to scale features before PCA. Defaults to TRUE.
A string scalar specifying a grouping variable for samples in
se
. This is used to scale the samples in each group separately.
Advanced usage. An integer vector specifying the highest azimuthal
Fourier harmonic to use. If specified, overwrites the use_agf
argument.
Seed for PCA. If not specified, no seed is set.
A SpatialExperiment / SingleCellExperiment / SummarizedExperiment
object with PC coordinates in reducedDims(se)
.
This function runs PCA on the BANKSY matrix (see getBanksyMatrix) with features scaled to zero mean and unit standard deviation.
data(rings)
spe <- computeBanksy(rings, assay_name = "counts", M = 1, k_geom = c(15, 30))
#> Computing neighbors...
#> Spatial mode is kNN_median
#> Parameters: k_geom=15
#> Done
#> Computing neighbors...
#> Spatial mode is kNN_median
#> Parameters: k_geom=30
#> Done
#> Computing harmonic m = 0
#> Using 15 neighbors
#> Done
#> Computing harmonic m = 1
#> Using 30 neighbors
#> Centering
#> Done
spe <- runBanksyPCA(spe, M = 1, lambda = 0.2, npcs = 20)