satijalab / sctransform

R package for modeling single cell UMI expression data using regularized negative binomial regression
GNU General Public License v3.0
208 stars 33 forks source link

SCTransform: merge different conditions and /or integration #99

Closed behyag closed 2 years ago

behyag commented 3 years ago

hi & thanks for the great package!

I have two Seurat objects (two conditions A - B) I want to do SCTransform and merge or integrate them, depending on the questions and analysis: I have two possible workflows: cold you please tell me which one is correct? they are both 10X data same seq platform

workflow 1: obj_A <- SCTransform(obj_A) obj_B <- SCTransform(obj_B)

merge the two objects mrg <- merge(obj_A, c(obj_B), add.cell.ids=c(A, B)

mrg.list <- SplitObject(mrg, split.by = "orig.ident") mrg.list <- lapply(X = mrg.list, FUN = SCTransform) features <- SelectIntegrationFeatures(object.list = mrg.list, nfeatures = 3000) mrg.list <- PrepSCTIntegration(object.list = mrg.list, anchor.features = features)

integ.anchors <- FindIntegrationAnchors(object.list = mrg.list, normalization.method = "SCT", anchor.features = features) integ.object.sct <- IntegrateData(anchorset = integ.anchors , normalization.method = "SCT")

and the downstream dim reduction ….

or workflow 2 : condition_A <- CreateSeuratObject(A) condition_B <- CreateSeuratObject(B) mrg <- merge(obj_A, obj_B) mrg$condition <- ifelse(mrg$orig.ident %in% c("A", "B"), "conditonA", "conditionB") mrg <- SCTransform(mrg)

mrg.list <- SplitObject(mrg, split.by = "condition") mrg.list <- lapply(X = mrg.list, FUN = SCTransform) features <- SelectIntegrationFeatures(object.list = mrg.list, nfeatures = 3000) mrg.list <- PrepSCTIntegration(object.list = mrg.list, anchor.features = features)

integ.anchors <- FindIntegrationAnchors(object.list = mrg.list, normalization.method = "SCT", anchor.features = features) integ.object.sct <- IntegrateData(anchorset = integ.anchors , normalization.method = "SCT")

and the downstream dim reduction ….

could you please tell which one makes more sense? many thanks

millersan commented 3 years ago

https://github.com/ChristophH/sctransform/issues/55#issuecomment-633843730