首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >一行代码转换h5ad为seurat:超简单

一行代码转换h5ad为seurat:超简单

作者头像
生信技能树
发布2025-07-29 10:33:30
发布2025-07-29 10:33:30
28400
代码可运行
举报
文章被收录于专栏:生信技能树生信技能树
运行总次数:0
代码可运行

前面我在写scanpy的h5ad转为R中的seurat对象时,写了这几个稿子:

万能的网友又给我支招了,这次给我推荐了一个我试过了后觉得超棒的方法:使用 schard 包进行转换,一行代码就可!

schard包安装

我们生信技能树每个月都有一期带领初学者,0基础的生信入门培训,会有各种贴心的答疑,甚至是新叶老师给你的一对一专属答疑,远程代码演示,快来:最新一期在8月4号,感兴趣的可以去看看呀:生信入门&数据挖掘线上直播课8月班

包的网址:https://github.com/cellgeni/schard

首先安装一下,非常简单:

代码语言:javascript
代码运行次数:0
运行
复制
options(download.file.method = "libcurl")
options(url.method = "libcurl")
## 使用西湖大学的 Bioconductor镜像
options(BioC_mirror="https://mirrors.westlake.edu.cn/bioconductor")
options("repos"=c(CRAN="https://mirrors.westlake.edu.cn/CRAN/"))
getOption('timeout')
options(timeout=10000)

# 安装
devtools::install_github("cellgeni/schard")

丝滑:

使用

先把示例数据下载下来:

或者用我上面开头的帖子中数据

代码语言:javascript
代码运行次数:0
运行
复制
library(schard)

download.file('https://datasets.cellxgene.cziscience.com/c5ac5c36-f60c-4680-8018-2d6cb65c0a37.h5ad','vis.heart.h5ad')
download.file('https://datasets.cellxgene.cziscience.com/8cc521c8-c4ff-4cba-a07b-cae67a9dcba9.h5ad','sn.heart.h5ad')
download.file('https://covid19.cog.sanger.ac.uk/baron16.processed.h5ad','ba16.h5ad')

转为Single Cell Experiment:

代码语言:javascript
代码运行次数:0
运行
复制
# load h5ad as Single Cell Experiment
ba16.sce = schard::h5ad2sce('ba16.h5ad')
ba16.sce

转为Seurat对象:

代码语言:javascript
代码运行次数:0
运行
复制
# load h5ad as Seurat
snhx = schard::h5ad2seurat('sn.heart.h5ad')
snhx
meta <- snhx@meta.data
head(snhx@meta.data)

DimPlot(snhx,group.by = "cell_state")

空转数据转为seurat:

代码语言:javascript
代码运行次数:0
运行
复制
# load all visium samples as single Seurat object
visx = schard::h5ad2seurat_spatial('vis.heart.h5ad')
visx
head(visx@meta.data)
# 可视化
SpatialDimPlot(visx,group.by = "cell_type",ncol = 2)

其他的用法:

代码语言:javascript
代码运行次数:0
运行
复制
# or load as list of Seurat objects (per slide
visl = schard::h5ad2seurat_spatial('vis.heart.h5ad',simplify = FALSE)
# or load raw counts
snhr = schard::h5ad2seurat('sn.heart.h5ad',use.raw = TRUE)
# raw counts for visium
visr = schard::h5ad2seurat_spatial('vis.heart.h5ad',use.raw = TRUE)

是不是超棒!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-07-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • schard包安装
  • 使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档