结合空间信息进行聚类以获得空间分辨的RNA-seq数据

问题描述

我目前有一组空间分辨的RNA序列数据。这听起来可能有些复杂,但它基本上只是一个矩阵,其中包含2000个采样点(即2000行,共同构成一个大脑切片,如下所示),每个点都有数千个属性值(表达量分别包含数千个特定基因),再加上x坐标和y坐标(即数千+ 2列)。

现在,我的任务是根据样本的表达特征“聚类”这些样本,并以2D坐标显示它们,如下所示:colored brain section from Allen Brain Atlas;或更准确地说,这个数字:

DBSCAN result

因此,在对基因表达属性(不包括x&y ords)运行PCA并选择前20个组件(由JackStraw确定)之后,我想到了从GIS借用聚类算法,因为它们似乎在空间上非常有用具有几个附加属性的数据。但是,诸如DBSCAN和OPTICS之类的常用效果不佳,因为它们要么1)未能将某些单元簇分成较小的簇,即使它们生成了20个以上的簇,或者2)包含具有附近区域颜色的离散点,使子区域不“链接在一起”。例如,在上图中,颜色为6、4、8(CA1,CA3,海马的DG)的区域似乎被周围的点分隔开了,并且没有直接链接(minPts和epsilon调整),而大脑皮层(颜色在图1中,非常明显的大弯曲区域没有适当地分成更多的子区域。 PAM /分层(病房)可能会做得更好,但是它们仍然包含带有“随机”颜色的离散点(请参见下图)。我尝试将两个空间属性(按比例缩放到相似的数量级或更大)添加到包含20个成分的PCA结果矩阵中进行聚类,但这并不能解决任何问题。

PAM result

我对GIS不熟悉,但是有什么地理空间方法来处理大量属性(空间坐标除外),同时仍然在结果中实现空间变量的显着影响?我想可能有比手动寻找最佳缩放系数坐标与PCA结果结合时更好的方法。此外,我实际上缺乏一种定量方法来评估这种空间聚类的性能(我不在乎鲁棒性),只能手动查看每个图形,并逐个比较它们。其中一个是《艾伦大脑地图集》中显示的内容。感谢您的建议!

btw:我尝试过的算法通过性能来判断,PAM〜病房的层次>基于图(SNN + Louvain)> kmeans / GMM> dbscan / optics / genie。

这是我输入到聚类算法中的数据矩阵的一行通常的样子:

PC_1        PC_2        PC_3        PC_4        PC_5        PC_6        PC_7        PC_8 
-15.7496168  -2.6794113  -4.9924088   3.3242015  -0.7291716  -7.1819954   0.6677717  -1.9238705 
       PC_9       PC_10       PC_11       PC_12       PC_13       PC_14       PC_15       PC_16 
  5.4845558   0.5440475   2.2236831   6.8582582   1.5146320   3.4878099  -0.5255667   0.3075648 
      PC_17       PC_18       xords       yords 
 -0.9937655   1.3039029  11.4650000  13.2950000

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...