Switch to side-by-side view

--- a
+++ b/Functions/variableFeatureSelection.R
@@ -0,0 +1,19 @@
+#' @description get variable genes and evalute the cell cycle effect
+#' @param seurat.lists: multi seurat object list
+#' @parma method: seurat process method
+#' @param: return.only.var.gene, vars.to.regress: parameter for SCTranform
+#' @param: nfeatures: the number of variable features
+
+variableFeatureSelection <- function(seurat.lists, method = c("Standard", "SCT"), return.only.var.genes = T, nfeatures = 3000, vars.to.regress = c("nCount_RNA", "percent.mt")){
+
+    for (i in 1:length(seurat.lists)) {
+        DefaultAssay(seurat.lists[[i]]) <- "RNA"
+        if(method == "SCT"){
+            seurat.lists[[i]] <- SCTransform(seurat.lists[[i]], variable.features.n = nfeatures, vars.to.regress = vars.to.regress, verbose = FALSE, return.only.var.genes = return.only.var.genes)
+        }else{
+            seurat.lists[[i]] <- NormalizeData(seurat.lists[[i]], verbose = FALSE)
+            seurat.lists[[i]] <- FindVariableFeatures(seurat.lists[[i]], selection.method = "vst", nfeatures = nfeatures, verbose = FALSE)            
+        }
+    }
+    return(seurat.lists)
+}
\ No newline at end of file