BAYESSPACE

爱德华·赵(Edward Zhao),马特·斯通(Matt Stone),Xing Ren和Raphael Gottardo

2022-04-26

图书馆(SingleCellexperiment)图书馆(ggplot2)图书馆(BAYESSPACE)

为BAYESSPACE准备实验

加载数据中

Bayesspace支持三种加载方式Singlecellexperiment用于分析。

使用的visium数据集处理太空游侠可以直接通过readvisium()功能。此函数仅采用通往空间Ranger输出目录的路径(包含空间/Filtered_feature_bc_matrix/子目录)并返回Singlecellexperiment

其次,可以通过getrds()功能。此功能需要两个参数 - 数据集的名称,以及数据集中的示例名称。

最后,Singlecellexperiment可以通过计数矩阵和行和列数据表手动构造对象。BAYESSPACE仅要求将点阵列坐标作为列提供上校酷塔。(请注意,增强visium数据集还需要组织图像中每个位置的像素坐标,但是在这种情况下,数据集应加载readvisium(),将自动加载这些数据。)

我们将继续从2018年的空间转录组学论文中获取黑色素瘤样本,以在此小插图中的其余示例中进行。

预处理数据

BAYESSPACE需要最少的数据预处理,但是我们提供了一个辅助功能来自动化它。

spatialpreprocess()log normations缩放计数矩阵并在顶部执行PCAn.hvgs高度可变的基因,保持顶部n.pcs主要组件。此外,在Singlecellexperiment用于下游分析。如果您不想重播PCA,请运行spatialpreprocess()带有国旗skip.pca = true只会添加元数据Bayesspace所需。

在这里,我们省略了日志正态化,因为所有数据集可通过getrds()已经包含对数符号计数。

聚类

选择簇数

我们可以使用qtune()qplot()帮助选择的功能,在我们的分析中使用的簇数。

与Bayesspace聚集

ampatialcluster()功能簇斑点,并将预测的群集标签添加到Singlecellexperiment。通常,就像我们在论文中进行的分析所做的那样,我们建议至少进行10,000次迭代(NREP = 10000),但是为了运行时,我们在此演示中使用了1,000个迭代。(请注意,必须设置随机种子以使结果可重复。)

两者都是mclust初始化(cluster.init)和bayesspace群集分配(空间。集群)现在可以在Singlecellexperiment中使用酷塔

可视化空间簇

我们可以用clusterplot()

作为clusterplot()返回aGGPLOT对象,可以通过与熟悉的GGPLOT2功能。另外,论点调色板设置每个群集使用的颜色,以及clusterplot()还有其他论点geom_polygon()尺寸或者颜色控制现场边界的美学。

增强的分辨率

以增强分辨率聚类

spatialenhance()函数将增强主组件的分辨率,并在亚源源分辨率下添加这些PC以及预测的群集标签Singlecellexperiment。就像我们的演示ampatialcluster()上面,我们使用较少的迭代来示例(NREP = 1000)比我们在实践中建议的(NREP = 100000或更大)。请注意jitter_scale应调整参数,以便在30%的时间内接受更新亚盘级表达式的建议。可以使用McMcChain(黑色素瘤,“ Ychange”),链条应稳定在0.25-0.40。通常,1000-2500迭代足以评估是否jitter_scale如果接受过高,则应增加,如果接受过低,则应增加。调整后,进行全部运行Patialenhance有更多的迭代。

增强的Singlecellexperiment包括原始父母点的索引SCE((spot.idx),以及亚台头的索引。它将偏移量添加到原始斑点坐标中,并提供增强的群集标签(空间。集群)。

我们可以如上所述绘制增强的群集分配。

增强基因表达的分辨率

BAYESSPACE在基因表达矩阵的主要成分上运行,并且spatialenhance()因此,计算增强的分辨率PC向量。增强的基因表达不是直接计算的,而是使用回归算法估算。对于每个基因,使用每个位置的PC向量进行训练以预测点级基因表达,并使用拟合模型来预测从亚柱PCS的亚源表达表达。

基因表达增强在增强Features()功能。Bayesspace预测表达xgboost默认情况下,但是也可以通过线性和DIRICHLET回归模型争论。使用时xgboost,我们建议自动调整nRounds通过将其设置为0,尽管这是以增加运行时的成本(比预先指定的慢4倍)nRounds在实践中)。

增强Features()可用于为所有基因或感兴趣基因的子集估算亚蛋白级表达。在这里,我们将通过增强四个标记基因的表达来证明:PMEL(黑色素瘤),CD2(T细胞),CD19(B细胞)和COL1A1(成纤维细胞)。

默认情况下,log normalized表达式(logcounts(SCE)),尽管可以指定其他测定或任意特征矩阵。

每个预测模型的诊断措施,例如RMSE使用时xgboost,添加到Rowdata增强的数据集。

可视化增强的基因表达

空间基因表达可视化配件图()

在这里,我们比较了估算标记基因的空间表达。

我们可以与点级表达进行比较。

访问马尔可夫连锁店

如果保存链被设定为真的这两个ampatialcluster()或者spatialenhance(),与各自的MCMC运行相关联的链条作为HDF5文件保留为磁盘。该文件的路径存储在单圈Perlexperiment的元数据中元数据(SCE)$ H5.链,可以直接阅读McMcChain()

链条作为一个CODA :: MCMC对象,可以分析Tidybayes或作为矩阵。该对象在迭代中具有一个行,其参数的值在整个行上串联。列命名为参数名称和索引(如果有)。

链< -McMcChain(黑色素瘤)链[15,,,,15这是给予的#> lambda [1,1] Lambda [1,2] Lambda [1,3] Lambda [1,4] Lambda [1,5]#> [1,] 0.01000000 0.000000000 0.00000000 0.00000000 0.000000000#> [2,] 0.08757829 -0.005798093 0.04594761 0.05789615 -0.019023472#> [3,] 0.10063323 -0.008922653 0.05061634 0.05269334 -0.004028245#> [4,] 0.13708014 -0.016090349 0.06626887 0.02779234 -0.022475194#> [5,] 0.12768109 -0.006919337 0.06831921 0.03047754 -0.027188932

要从磁盘上删除HDF5文件并从元数据中删除其路径,请使用removechain()