【单细胞转录组】已有单样本注释结果,如果添加到未注释的整合结果中?
在进行单细胞转录组数据分析时,很多情况是:只有一个样本,走官方流程
https://satijalab.org/seurat/articles/pbmc3k_tutorial
有多个样本,多了一步merge和(大部分情况下都需要的)去批次过程,然后进行分群,用marker去注释。
但我遇到的情况是,整合后的样本直接去注释不太好做,所以先进行单样本的注释,这时已经对样本情况有了一定的了解,这时候再去做整合注释可能会更好一点。
所以问题是,如果分别进行了单样本注释和多样本整合分群,如何将单样本注释好的信息直接贴回多样本中直接看注释结果?
也就是:
1.多样本整合的结果有了,跑完了分群。
2.单样本的结果也有了,做完了注释。
其实很简单,因为注释信息和barcode信息都在meta.data中,用barcode去做一个类似VLOOKUP的事情。
在样本比较少嫌写代码麻烦的话,我们甚至可以直接在Excel中完成。
将meta.data导出,sample这里是有两个样本
只需要
再添加一列cluster,然后用VLOOKUP将具体的信息粘进去。
类似
=VLOOKUP(A2,Sheet1!A:K,11,FALSE)
(A2这里是barcode列)
然后我们只要去read.csv,读取修改后的数据,再将多样本整合后的meta.data替换为这个修改后的dataframe就行。
要注意的事情:使用VLOOKUP时要注意barcode这里是否能一一对应,比如多样本在创建seurat对象时为了避免麻烦,可能会在原始barcode前面添加样本信息来进行区别。
先做单样本再做整合的好处:
在cluster这一列还可以添加上样本信息,比如cluster1_sample1,clsuter1_sample2,这样我们就可以根据表达绘制相关性热图。看同样注释为cluster1和cluster1的相关性如何;在umap上也比较好看。
在样本比较少的情况下,先进行单样本注释有助于我们对整合后的结果进行分析,一些不确定的事情可以得到验证。比如在整合后我发现有一群有疑问,当时记录的是它可能质量较差。
在单样本注释时,它果然被注释为低质量的细胞。
使用Excel是最傻瓜但其实很好用的方法。
写个函数,读取一个主RDS,再读取多个单样本的结果,把所有单样本的信息加回到主RDS中,会在开发的R包中添加上这个功能。
本文由mdnice多平台发布
共有 0 条评论