scanpy不同cluster及细胞类型合并

简介: scanpy不同cluster及细胞类型合并

在用scanpy进行单细胞分析时往往要对聚类(leiden)后的簇进行细胞类型的标注并生成细胞图谱,但是在通常使用的更改注释的方法中

new_cluster_names = []
adatas.rename_categories('leiden', new_cluster_names)


new_cluster_names的字符不允许重复,而我无法确保每一个簇的细胞类型都不相同(一般都需要手动调整),于是我只能在相同的细胞类型后添加_num进行注释,如Bcell_1, Bcell_2,用此方法生成的细胞图谱如下所示

微信截图_20230606154158.png

真的是相当难看,观察起来也很费劲。

所以我一直在想怎么才能把相同的cell type进行合并。后来我想到了一个替代方案。我在anndata中找到了这样一组注释

adata.uns['leiden_colors']

微信截图_20230606154233.png

我猜测每次生成umap,图中的颜色都是从这个数组中取得的,于是我尝试把相同cell type的颜色改为一致。修改后生成的图如下所示

微信截图_20230606154304.png

现在相同cell type的颜色总算是一致了,总体美观多了,就是右侧的类型注释还是没有做到合并。

于是我又猜测,我在第一次调用画图函数

sc.pl.umap(adatas, color='leiden', legend_fontsize='xx-small')时,关于分类信息只传入了leiden,我猜测函数可能是根据这一分类依据自动创建了leiden_color并进行分类和上色。那我创建一个允许重复的列表传入分类数据不就可以实现cell type合并了吗?

于是我进行了以下操作

adatas.obs['leiden_poly'] = adatas.obs['leiden'].str[:-2]

微信截图_20230606154334.png

sc.pl.umap(adatas, color='leiden_poly', legend_fontsize='xx-small')

微信截图_20230606154403.png

相关文章
|
10月前
|
机器学习/深度学习 算法 数据挖掘
SAS用K-Means 聚类最优k值的选取和分析
SAS用K-Means 聚类最优k值的选取和分析
|
传感器 编解码 计算机视觉
使用星凸随机超曲面模型对扩展对象和分组目标进行形状跟踪(Matlab代码实现)
使用星凸随机超曲面模型对扩展对象和分组目标进行形状跟踪(Matlab代码实现)
203 0
使用星凸随机超曲面模型对扩展对象和分组目标进行形状跟踪(Matlab代码实现)
|
人工智能 测试技术
cf1653c通过操作让数组序列呈现某种规律 C. Differential Sorting
cf1653c通过操作让数组序列呈现某种规律 C. Differential Sorting
98 0
|
机器学习/深度学习 算法 Ubuntu
使用CatBoost和NODE建模表格数据对比测试
使用CatBoost和NODE建模表格数据对比测试
198 0
使用CatBoost和NODE建模表格数据对比测试
|
C# 数据处理
C#使用拉依达准则(3σ准则)剔除异常数据(.Net剔除一组数据中的奇异值)
原文:C#使用拉依达准则(3σ准则)剔除异常数据(.Net剔除一组数据中的奇异值) 1、问题的提出: 电池生产中,遇到一批电池的测量结果数据: 电压值 电池个数 电压值 电池个数 电压值 电池个数 电压值 电池个数 0.
1799 0
如何找出 sklearn SelectBest 选出几个重要的特征名称(column name)
如何找出 sklearn SelectBest 选出几个重要的特征名称(column name)
SAP QM 样品废弃后如何删除physical samples记录?
SAP QM 样品废弃后如何删除physical samples记录?
SAP QM 样品废弃后如何删除physical samples记录?
Check List线段树维护偏序三元组
如上的问题是让求出满足三元组(xi,yi),(xj,yj)(xk,yk) 且{ xi < xj < xk yj < yi < yk }的数量 这里的约束条件有两个,可以称作是二维偏序问题 推荐一篇博客:链接 这里面总结了一些经验 关于这个题目,学长的博客链接里面讲到了一些做题的思路: 按照x坐标进行排序,然后对y进行离散化处理(看数据范围就会发现y的数据范围达到了1e9,但是最多只会有2e5个点) 之后,假设当前位置是pos
121 0