Integration_SCP | R Documentation |
Integrate single-cell RNA-seq data using various integration methods.
Integration_SCP(
srtMerge = NULL,
batch,
append = TRUE,
srtList = NULL,
assay = NULL,
integration_method = "Uncorrected",
do_normalization = NULL,
normalization_method = "LogNormalize",
do_HVF_finding = TRUE,
HVF_source = "separate",
HVF_method = "vst",
nHVF = 2000,
HVF_min_intersection = 1,
HVF = NULL,
do_scaling = TRUE,
vars_to_regress = NULL,
regression_model = "linear",
scale_within_batch = FALSE,
linear_reduction = "pca",
linear_reduction_dims = 50,
linear_reduction_dims_use = NULL,
linear_reduction_params = list(),
force_linear_reduction = FALSE,
nonlinear_reduction = "umap",
nonlinear_reduction_dims = c(2, 3),
nonlinear_reduction_params = list(),
force_nonlinear_reduction = TRUE,
neighbor_metric = "euclidean",
neighbor_k = 20L,
cluster_algorithm = "louvain",
cluster_resolution = 0.6,
seed = 11,
...
)
srtMerge |
A merged Seurat object that includes the batch information. |
batch |
A character string specifying the batch variable name. |
append |
Logical, if TRUE, the integrated data will be appended to the original Seurat object (srtMerge). |
srtList |
A list of Seurat objects to be checked and preprocessed. |
assay |
The name of the assay to be used for downstream analysis. |
integration_method |
A character string specifying the integration method to use.
Supported methods are: |
do_normalization |
A logical value indicating whether data normalization should be performed. |
normalization_method |
The normalization method to be used. Possible values are "LogNormalize", "SCT", and "TFIDF". Default is "LogNormalize". |
do_HVF_finding |
A logical value indicating whether highly variable feature (HVF) finding should be performed. Default is TRUE. |
HVF_source |
The source of highly variable features. Possible values are "global" and "separate". Default is "separate". |
HVF_method |
The method for selecting highly variable features. Default is "vst". |
nHVF |
The number of highly variable features to select. Default is 2000. |
HVF_min_intersection |
The feature needs to be present in batches for a minimum number of times in order to be considered as highly variable. The default value is 1. |
HVF |
A vector of highly variable features. Default is NULL. |
do_scaling |
A logical value indicating whether to perform scaling. If TRUE, the function will force to scale the data using the ScaleData function. |
vars_to_regress |
A vector of variable names to include as additional regression variables. Default is NULL. |
regression_model |
The regression model to use for scaling. Options are "linear", "poisson", or "negativebinomial" (default is "linear"). |
scale_within_batch |
Whether to scale data within each batch. Only valid when the |
linear_reduction |
The linear dimensionality reduction method to use. Options are "pca", "svd", "ica", "nmf", "mds", or "glmpca" (default is "pca"). |
linear_reduction_dims |
The number of dimensions to keep after linear dimensionality reduction (default is 50). |
linear_reduction_dims_use |
The dimensions to use for downstream analysis. If NULL, all dimensions will be used. |
linear_reduction_params |
A list of parameters to pass to the linear dimensionality reduction method. |
force_linear_reduction |
A logical value indicating whether to force linear dimensionality reduction even if the specified reduction is already present in the Seurat object. |
nonlinear_reduction |
The nonlinear dimensionality reduction method to use. Options are "umap","umap-naive", "tsne", "dm", "phate", "pacmap", "trimap", "largevis", or "fr" (default is "umap"). |
nonlinear_reduction_dims |
The number of dimensions to keep after nonlinear dimensionality reduction. If a vector is provided, different numbers of dimensions can be specified for each method (default is c(2, 3)). |
nonlinear_reduction_params |
A list of parameters to pass to the nonlinear dimensionality reduction method. |
force_nonlinear_reduction |
A logical value indicating whether to force nonlinear dimensionality reduction even if the specified reduction is already present in the Seurat object. |
neighbor_metric |
The distance metric to use for finding neighbors. Options are "euclidean", "cosine", "manhattan", or "hamming" (default is "euclidean"). |
neighbor_k |
The number of nearest neighbors to use for finding neighbors (default is 20). |
cluster_algorithm |
The clustering algorithm to use. Options are "louvain", "slm", or "leiden" (default is "louvain"). |
cluster_resolution |
The resolution parameter to use for clustering. Larger values result in fewer clusters (default is 0.6). |
seed |
An integer specifying the random seed for reproducibility. Default is 11. |
... |
Additional arguments to be passed to the integration method function. |
A Seurat
object.
Seurat_integrate
scVI_integrate
MNN_integrate
fastMNN_integrate
Harmony_integrate
Scanorama_integrate
BBKNN_integrate
CSS_integrate
LIGER_integrate
Conos_integrate
ComBat_integrate
Standard_SCP
data("panc8_sub")
panc8_sub <- Integration_SCP(
srtMerge = panc8_sub, batch = "tech",
integration_method = "Uncorrected"
)
CellDimPlot(panc8_sub, group.by = c("tech", "celltype"))
panc8_sub <- Integration_SCP(
srtMerge = panc8_sub, batch = "tech",
integration_method = "Uncorrected",
HVF_min_intersection = 5
)
CellDimPlot(panc8_sub, group.by = c("tech", "celltype"))
panc8_sub <- Integration_SCP(
srtMerge = panc8_sub, batch = "tech",
integration_method = "Uncorrected",
HVF_min_intersection = 5, scale_within_batch = TRUE
)
CellDimPlot(panc8_sub, group.by = c("tech", "celltype"))
panc8_sub <- Integration_SCP(
srtMerge = panc8_sub, batch = "tech",
integration_method = "Seurat"
)
CellDimPlot(panc8_sub, group.by = c("tech", "celltype"))
panc8_sub <- Integration_SCP(
srtMerge = panc8_sub, batch = "tech",
integration_method = "Seurat",
FindIntegrationAnchors_params = list(reduction = "rpca")
)
CellDimPlot(panc8_sub, group.by = c("tech", "celltype"))
## Not run:
integration_methods <- c(
"Uncorrected", "Seurat", "scVI", "MNN", "fastMNN", "Harmony",
"Scanorama", "BBKNN", "CSS", "LIGER", "Conos", "ComBat"
)
for (method in integration_methods) {
panc8_sub <- Integration_SCP(
srtMerge = panc8_sub, batch = "tech",
integration_method = method,
linear_reduction_dims_use = 1:50,
nonlinear_reduction = "umap"
)
print(CellDimPlot(panc8_sub,
group.by = c("tech", "celltype"),
reduction = paste0(method, "UMAP2D"),
xlab = "", ylab = "", title = method,
legend.position = "none", theme_use = "theme_blank"
))
}
nonlinear_reductions <- c("umap", "tsne", "dm", "phate", "pacmap", "trimap", "largevis", "fr")
panc8_sub <- Integration_SCP(
srtMerge = panc8_sub, batch = "tech",
integration_method = "Seurat",
linear_reduction_dims_use = 1:50,
nonlinear_reduction = nonlinear_reductions
)
for (nr in nonlinear_reductions) {
print(CellDimPlot(panc8_sub,
group.by = c("tech", "celltype"),
reduction = paste0("Seurat", nr, "2D"),
xlab = "", ylab = "", title = nr,
legend.position = "none", theme_use = "theme_blank"
))
}
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.