前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >动动手指的单细胞分析手动选点小工具:xSelectCells

动动手指的单细胞分析手动选点小工具:xSelectCells

作者头像
生信技能树jimmy
发布2022-06-13 09:47:40
7640
发布2022-06-13 09:47:40
举报
文章被收录于专栏:单细胞天地单细胞天地

在做单细胞分析的时候,时不时会遇到这样的情况:想知道这几个在图上看着很特别的点是哪几个细胞,或是一些可见的小subcluster想要直接标记出来。大多数时候还是有各种各样的解决方法的,包括Seurat自带的一些interactive功能,不过还稍稍不那么趁手(可能是我用得太少哈哈)。

最近恰好看到群友们提到类似的需求,手动从降维图上选出目标细胞来做后续分析,那刚好呀,shiny我熟,类似的功能以前实现过,趁着周末不如赶紧包包做起来嘿嘿🤔

产物就是这里要介绍的这个小小包,github地址:

https://github.com/vikkki/xSelectCells

话不多说先开始:

安装

安装这个小工具之前可以先安装shiny,ploty 以及dplyr, 当然还有Seurat啦。

代码语言:javascript
复制
devtools::install_github('vikkki/xSelectCells')

使用

使用也非常简单,目前就一个函数。需要注意的是作为input的seurat对象需要有umap,以及umap的key需要是 UMAP_。不过一般RunUMAP之后key就已经符合需要了。

代码语言:javascript
复制
xSelectCells::xSelectCells(seurat_obj)
# 或者
barcodes <- xSelectCells::xSelectCells(seurat_obj)

界面如图

如果看不到下面的按钮和信息栏建议把右下窗口拉大一点,或者在浏览器打开(viewer section 上边 show in new window):

xs界面

细胞信息:

xs信息

细胞下载:

选好之后点下载,这时候不会关闭shiny,保存后可以继续选择新的一组细胞。

xs下载

由于xSelectCells()函数会在最终结束shinyApp session的时候返回最后选定的细胞barcodes,所以可以直接点击确认按钮退出选择界面并返回barcode列表:

代码语言:javascript
复制
Listening on http://127.0.0.1:3269
> barcodes
 [1] "GTAGCTAAGTATTGCC-7"  "AGGTGTTCATGGAATA-7"  "TTACCGCAGAGCAACC-10" "GCTTTCGAGGCAGGTT-1" 
 [5] "ATGCATGCACAAATCC-4"  "ACAACCAGTTACGGAG-5"  "CTTCTCTAGGCGATAC-5"  "GAGACTTTCACTGCTC-5" 
···

下游

拿到barcode列表之后,可以做的事情就有很多了,简单的比如将这些细胞从原来的对象里分出成新的对象:

代码语言:javascript
复制
seurat_obj_sub <- subset(seurat_obj, cells = barcodes)

或者在Dimplot里高光一波:

代码语言:javascript
复制
DimPlot(seurat_obj, cells.highlight = c(barcode))

以及重新命名,生成对应metadata等等。相信大家在分析的过程中肯定有更妙的应用。

包的后续

其实从产生想法到构建完成,如此小的包所花的时间意外也有好几天,这期间困扰我最久的(可能有90%的时间)就是shinyApp在作为包的时候的输入输出以及命名空间和环境问题,期间差点弃坑。不过幸好去看了Seurat的源码,才磕磕绊绊完成个这个小小工具。单细胞这么火,其实大佬们的工具真的很强,群友中的大佬也有无数好用的工具和代码。可能xSelectCells的最大意义是练习(笑),但是如果它稍微帮到你一点点,那真的太好了😆

目前我正在加入根据spatial plot圈点的功能,以及对于不同slot和reduction的支持,在此大力欢迎各种建议!

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

本文分享自 单细胞天地 微信公众号,前往查看

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

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

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