 目前市面上做单细胞数据分析,主要是基于R的seurat包和python的scanpy包。前面小编根大家分享过如何使用这两种方法读入10X的原始数据。有时候我们需要从GEO下载别人提交的单细胞数据来做分析,但是别人用的编程语言可能跟你用的不一样,这可难坏了不少小伙伴。今天小编就跟大家分享一个R包SeuratDisk,能够实现R中seurat格式的对象和python里面h5ad格式的对象,相互转换。下面我们以10X的3k PBMC数据为例给大家演示一下library(Seurat) #remotes::install_github("satijalab/seurat-data") library(SeuratData) library(SeuratDisk)
#InstallData("pbmc3k") data("pbmc3k.final") pbmc3k.final # An object of class Seurat # 13714 features across 2638 samples within 1 assay # Active assay: RNA (13714 features, 2000 variable features) # 2 dimensional reductions calculated: pca, umap
SaveH5Seurat(pbmc3k.final, filename = "pbmc3k.h5Seurat") Convert("pbmc3k.h5Seurat", dest = "h5ad") 这个时候,在我们的当前工作路径下面就会得到两个新的文件
 然后我们就可以用python读入生成的pbmc3k.h5ad文件import scanpy
adata = scanpy.read_h5ad("pbmc3k.h5ad") print(adata)

可以看到,我们已经成功的将一个R的Seurat对象的数据,转成了h5ad格式的文件,并且成功的读入到了python中。那么接下来对python比较数据的小伙伴就可以使用python继续进行数据分析了。 如果GEO里面找到的是一个h5ad格式的文件,而你又对python不是很熟,平时都用R做单细胞数据分析。那么我们还是可以使用SeuratDisk这个包将h5ad转成seurat对象。library(Seurat) library(SeuratDisk)
Convert("pbmc3k_final.h5ad", dest = "h5seurat", overwrite = TRUE) pbmc3k <- LoadH5Seurat("pbmc3k.h5Seurat")
pbmc3k #> An object of class Seurat #> 13714 features across 2638 samples within 1 assay #> Active assay: RNA (13714 features, 2000 variable features) #> 2 dimensional reductions calculated: pca, umap 为了方便大家交流学习,共同进步,我特地创建了微信交流群
|