library(Seurat)
library(SeuratDisk)
1. ArchR Object to Seurat Object
## get a Seurat object form ArchR object motif z-score matrix
MotifMatrix <- getMatrixFromProject(scATAC, useMatrix = "MotifMatrix")
Motif_Matrix <- MotifMatrix@assays@data$z
rownames(Motif_Matrix) <- MotifMatrix@elementMetadata$name
meta.data <- scATAC@cellColData
head(meta.data)
meta.data <- meta.data[, c("Sample","predictedGroup")]
counts <- Motif_Matrix[, rownames(meta.data)]
meta.data$Sample <- as.character(meta.data$Sample)
dim(counts)
dim(meta.data)
meta.data <- as.data.frame(meta.data)
obj.atac <- CreateSeuratObject(counts = counts,
assay = "MotifMatrix", meta.data = meta.data,
names.delim = "#") %>% NormalizeData()
2. Seurat Object to sce
sce.atac <- as.SingleCellExperiment(obj.atac)
3. sce to Seurat Object
obj.atac <- as.Seurat(sce.atac)
4. Seurat Object to h5ad and h5Seurat
library(SeuratDisk, quietly = TRUE)
SaveH5Seurat(obj.atac, filename = "scATACseq.h5Seurat")
Convert("scATACseq.h5Seurat", dest = "h5ad")
#h5ad and h5Seurat as input
##scanpy
#adata = sc.read_h5ad('scATACseq.h5ad')
##R
#obj.seurat <- LoadH5Seurat("scATACseq.h5Seurat")
5. Seurat Object to loom
obj.loom <- as.loom(obj.seurat, filename = "obj.loom")