I’m currently working on Xenium (10x Genomics) data analysis, which contains 321 targeted genes. To explore more, I would like to merge and integrate public data with my Xenium dataset. However, the public data is at the transcriptomics level.
My question is, can we merge and integrate data with different numbers of transcripts together?
I’m working with Seurat V.5, using the SCTransform normalization method. After merging the two datasets, I integrated them using the “IntegrateLayers” function with the HarmonyIntegration method, selecting only the common features identified in both datasets.
Here is the code I used:
common_genes <- intersect(rownames(Xenium.SPT.annotated.filtered), rownames(PublicData.normal))
Hi everyone,
I’m currently working on Xenium (10x Genomics) data analysis, which contains 321 targeted genes. To explore more, I would like to merge and integrate public data with my Xenium dataset. However, the public data is at the transcriptomics level.
My question is, can we merge and integrate data with different numbers of transcripts together?
I’m working with Seurat V.5, using the SCTransform normalization method. After merging the two datasets, I integrated them using the “IntegrateLayers” function with the HarmonyIntegration method, selecting only the common features identified in both datasets.
Here is the code I used:
common_genes <- intersect(rownames(Xenium.SPT.annotated.filtered), rownames(PublicData.normal))
Merged_data <- merge(Xenium.SPT.annotated.filtered, PublicData.normal)
Merged_data <- SCTransform(Merged_data, assay = "Xenium")
Merged_data <- RunPCA(Merged_data, npcs = 30)
Integrated_data <- IntegrateLayers(object = Merged_data, method = HarmonyIntegration, orig.reduction = "pca", new.reduction = "harmony", features = common_genes, verbose = FALSE)
Integrated_data[["Xenium"]] <- JoinLayers(Integrated_data[["Xenium"]])
Integrated_data <- FindNeighbors(Integrated_data, reduction = "harmony", dims = 1:30)
Integrated_data <- FindClusters(Integrated_data, resolution = 0.6)
Integrated_data <- RunUMAP(Integrated_data, dims = 1:30, reduction = "harmony")
Is this approach feasible? If you have any comments or suggestions, please feel free to share. Thanks!