convert seurat to scanpy

singlecell seurat(RDS) to scanpy(h5ad)

  • R code

library(Seurat)
library(SeuratDisk)

srt <- readRDS('subDC.rds')

# convert factor to character
i <- sapply(srt@meta.data, is.factor)
srt@meta.data[i] <- lapply(srt@meta.data[i], as.character)

DefaultAssay(srt) <- 'RNA' # set default assay


SaveH5Seurat(srt, filename = 'srt.h5seurat', overwrite = TRUE)
# if SaveH5Seurat get err:
# Object too old to save, please update your Seurat object to at least v3.1.2 using UpdateSeuratObject
# srt <- UpdateSeuratObject(srt)

Convert('srt.h5seurat','srt.h5ad', assay='RNA', overwrite = TRUE)

download test data

curl -o local.rds "https://corpora-data-prod.s3.amazonaws.com/6deef5dc-d572-4990-971d-b0380850ea55/local.rds?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ASIATLYQ5N5XTBTXPXTJ%2F20221213%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20221213T024129Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEIb%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCXVzLXdlc3QtMiJIMEYCIQCbLFp40OW8T47mtmQF560aKt8j3nv1KTI2lB%2FmbuUMuQIhAMIcHizLCt0M%2BYr7Rb63hLM4Dx4jbcNaeP2m90KJDbW1KvQDCK%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEQARoMMjMxNDI2ODQ2NTc1IgxqTq9d1N0QQSHNnu0qyAMzuvesva8WIsuIpaTgLk%2BUhus3cnrycc0Q%2F%2BKF9DUYmW7MIIBu20dkqvVw9ZAeqXHoiVn7YHG21gytN4AZFqPv7aeuD%2FPM6mgUgBzUDRQHvFznNdd8%2FNTqwT0obN9ULKbyhj%2BtR1U8SG4gaAJpqayit8LfYNkg9rAk8xYEN6V%2BfSl8DywC%2BNCkaMfGa0MO3uVXv6Zw%2FZCvfKoLkQol8TOhIaB77P2w4%2F68THY7ET9Um9vIkTR44fSw%2Fs0eNt2nFe9PxcM%2B2JfrsQg%2BdRKXCztwq08Ak5YhRYDDAlcGkC%2Bg1elay0VbFftBrDQJaW9rPvIkyWp1TFzCXBP3x3ZnU0gSew2h7A05%2BTsDtAMkYDiEHGubT65fIOQ6e0z4FFFK2UmaZfqjXd3VIreh2pNY98LFQ0LiFEFWbUA8mpXzEYrvHiElFmQoPXOQ8RNCYn%2BQZAaPd6TmbqPHsrQhL9MN7JHm%2BcQkjJAB%2BIeAf4PSTHEcyr4Ja70a5BaEPJIAICxjIgAEQW%2BYk5oUuzRpjVzNFDtiKD99Ia%2F5hna%2B%2BOwEKiO6D%2F9n0e%2F1IMQ2XnFBv%2FM%2B5cHSMKEQ8wpV3FizwvI7yVRSjGgEBG3F5ykwxcvenAY6pAHJRSf5Q7vwtVMCCaKoDxD4C5XJzj6NV2V2XPnugcvg5vNaBcN2N9mxD%2B5X19FwM%2BkQ9%2FOVylXh20zIKtiDlMy9RGFoO2jNnf5mfQMXKD8Q7i8nK8F11Bw949QL69dY2fQJX5T%2Be8EeA8JPPIn3k14Hhru3iQTQmb9OVyOU8R3c9BC4qkwldkVSW8k3iMsu0OM%2BCEGxw0pCxkKBZZp1FW9BI8MFYA%3D%3D&X-Amz-Signature=66a9478d223bd6f0947a23594df48447f2628d2130ec9f0316d6c14f7ac3ce99"
[6]:
library(Seurat)
library(SeuratDisk)
srt <- readRDS('/Users/yuanzan/Downloads/local.1.rds')
i <- sapply(srt@meta.data, is.factor)
srt@meta.data[i] <- lapply(srt@meta.data[i], as.character)
DefaultAssay(srt) <- 'RNA'

srt <- UpdateSeuratObject(srt)
SaveH5Seurat(srt, filename = 'kidney_tumors.h5seurat', overwrite = TRUE)
Convert('kidney_tumors.h5seurat','kidney_tumors.h5ad', assay='RNA', overwrite = TRUE)
Validating object structure

Updating object slots

Ensuring keys are in the proper strucutre

Ensuring feature names don't have underscores or pipes

Object representation is consistent with the most current Seurat version

Creating h5Seurat file for version 3.1.5.9900

Adding counts for RNA

Adding data for RNA

No variable features found for RNA

Adding feature-level metadata for RNA

Adding cell embeddings for pca

No loadings for pca

No projected loadings for pca

No standard deviations for pca

No JackStraw data for pca

Adding cell embeddings for umap

No loadings for umap

No projected loadings for umap

No standard deviations for umap

No JackStraw data for umap

Validating h5Seurat file

Adding data from RNA as X

Transfering meta.features to var

Adding counts from RNA as raw

Transfering meta.features to raw/var

Transfering meta.data to obs

Adding dimensional reduction information for pca

Adding dimensional reduction information for umap