舊號(hào)無故被封,小號(hào)再發(fā)一次
更多空間轉(zhuǎn)錄組文章:
1. 新版10X Visium
- 【10X空間轉(zhuǎn)錄組Visium】(一)Space Ranger 1.0.0(更新于20191205)
- 【10X空間轉(zhuǎn)錄組Visium】(二)Loupe Browser 4.0.0
- 【10X空間轉(zhuǎn)錄組Visium】(三)跑通Visium全流程記錄
- 【10X空間轉(zhuǎn)錄組Visium】(四)R下游分析的探索性代碼示例
- 【10X空間轉(zhuǎn)錄組Visium】(五)Visium原理融求、流程與產(chǎn)品
- 【10X空間轉(zhuǎn)錄組Visium】(六)新版Seurat v3.2分析Visium空間轉(zhuǎn)錄組結(jié)果的代碼實(shí)操
- 【10X空間轉(zhuǎn)錄組Visium】(七)思考新版Seurat V3.2作者在Github給予的回答
2. 舊版Sptial
- 【舊版空間轉(zhuǎn)錄組Spatial】(一)ST Spot Detector使用指南
- 【舊版空間轉(zhuǎn)錄組Spatial】(二)跑通流程試驗(yàn)記錄
- 【舊版空間轉(zhuǎn)錄組Spatial】(三)ST Spot Detector實(shí)操記錄
環(huán)境說明:
為了避免與之前的Seurat包沖突私股,當(dāng)前環(huán)境沒有安裝之前的Seurat版本的win10 Rstudio凑阶,而非服務(wù)器生產(chǎn)環(huán)境
一范删、Seurat v3.2 對(duì)空間轉(zhuǎn)錄組Visium的結(jié)果分析中實(shí)現(xiàn)的功能:
- 歸一化
- 降維和聚類
- 檢測空間可變特征(spatially-variable features)
- 互動(dòng)式的可視化
- 與單細(xì)胞RNA-seq數(shù)據(jù)整合
- 處理多個(gè)切片
二矾利、安裝Seurat v3.2 :
#For learning Seurat v2.3
#Author:Robin 2019.12.22
# Enter commands in R (or R studio, if installed)
# Install the devtools package from Hadley Wickham
install.packages("devtools")
devtools::install_github("satijalab/seurat", ref = "spatial")
devtools::install_github('satijalab/seurat-data')
一開始嘗試了幾次都裝不成功嘁扼,后面突然就行了信粮,而且網(wǎng)速還很快,果然是看運(yùn)氣的趁啸。强缘。
成功安裝!
> library(Seurat)
> package.version("Seurat")
[1] "3.1.2" #說是官網(wǎng)v3.2不傅,實(shí)際上是v3.1.2
加載包:
library(Seurat)
library(SeuratData)
library(ggplot2)
library(cowplot)
library(dplyr)
對(duì)于第一個(gè)小插圖旅掂,我們分析了使用10x Genomics 的Visium技術(shù)生成的數(shù)據(jù)集。我們將擴(kuò)展Seurat以便在不久的將來使用其他數(shù)據(jù)類型访娶,包括SLIDE-Seq商虐,STARmap和MERFISH。
三崖疤、下載數(shù)據(jù)集(但一般不這么做)
在這里秘车,我們將使用使用Visium v??1化學(xué)方法生成的最近發(fā)布的矢狀小鼠大腦切片數(shù)據(jù)集。小鼠大腦的矢狀面前段后段(There are two serial anterior sections, and two (matched) serial posterior sections.)
- 這將讀取spaceranger管道的輸出劫哼,并返回一個(gè)Seurat對(duì)象叮趴,該對(duì)象包含spot-level表達(dá)數(shù)據(jù)以及組織切片的關(guān)聯(lián)圖像。
- 您還可以使用我們的SeuratData包來輕松訪問數(shù)據(jù)权烧,如下所示眯亦。安裝數(shù)據(jù)集后,您可以鍵入
?stxBrain
以了解更多信息般码。
InstallData("stxBrain")
brain <- LoadData("stxBrain", type = "anterior1")
由于國內(nèi)網(wǎng)速很慢妻率,建議直接在此處下載數(shù)據(jù)包到本地,然后使用Load10X_Spatial
函數(shù)將其加載到Seurat中侈询。
四舌涨、加載10X Visiumspaceranger
管道中生成的結(jié)果文件
在生產(chǎn)中,我們實(shí)際上加載的數(shù)據(jù)集通常是自己經(jīng)過Visium spaceranger
管道生成的結(jié)果文件,而非直接從網(wǎng)上下載的數(shù)據(jù)集囊嘉。
從10X Visium流程中生成結(jié)果文件的方法: 10X空間轉(zhuǎn)錄組Visium學(xué)習(xí)筆記(三)跑通Visium全流程記錄
查看目錄結(jié)構(gòu)
$cd /V1_Adult_Mouse_Brain/outs
$tree -L 2
.
├── analysis
│ ├── clustering
│ ├── diffexp
│ ├── pca
│ ├── tsne
│ └── umap
├── cloupe.cloupe
├── filtered_feature_bc_matrix
│ ├── barcodes.tsv.gz
│ ├── features.tsv.gz
│ └── matrix.mtx.gz
├── filtered_feature_bc_matrix.h5 #實(shí)際上需要的文件①
├── metrics_summary.csv
├── molecule_info.h5
├── possorted_genome_bam.bam
├── possorted_genome_bam.bam.bai
├── raw_feature_bc_matrix
│ ├── barcodes.tsv.gz
│ ├── features.tsv.gz
│ └── matrix.mtx.gz
├── raw_feature_bc_matrix.h5
├── spatial # 實(shí)際上需要的文件②温技;記錄空間信息:用戶提供的原始全分辨率brightfield圖像的下采樣版本。下采樣是通過box濾波實(shí)現(xiàn)的扭粱,它對(duì)全分辨率圖像中像素塊的RGB值進(jìn)行平均舵鳞,得到下采樣圖像中一個(gè)像素點(diǎn)的RGB值。
│ ├── aligned_fiducials.jpg
│ ├── detected_tissue_image.jpg
│ ├── scalefactors_json.json
│ ├── tissue_hires_image.png
│ ├── tissue_lowres_image.png
│ └── tissue_positions_list.csv
└── web_summary.html
9 directories, 20 files
加載數(shù)據(jù)
此處是將服務(wù)器之前跑的Space Ranger的輸出結(jié)果 filtered_feature_bc_matrix.h5
文件和一個(gè)spatial
文件夾放置到本地win10環(huán)境中test/
目錄下
讀取文件需要安裝好
hdf5r
包
> brain<-Load10X_Spatial(
+ data.dir = 'E:\\BioInfo\\DATA\\Visium\\test', #該目錄包含10X提供的matrix.mtx琢蛤,genes.tsv(或features.tsv)和barcodes.tsv文件蜓堕。
+ assay = "Spatial",
+ slice = "slice1", #組織切片存儲(chǔ)圖像的名稱
+ filter.matrix = TRUE, #僅保留已確定位于組織上方的spot
+ to.upper = FALSE, #將所有功能名稱轉(zhuǎn)換為大寫。 例如博其,當(dāng)分析需要在人類和小鼠基因名稱之間進(jìn)行比較時(shí)套才,該功能將非常有用。
+ )
# 查看Seurat對(duì)象信息
> brain
An object of class Seurat
31053 features across 2698 samples within 1 assay
Active assay: Spatial (31053 features)
當(dāng)然慕淡,也可以?stxBrain會(huì)給出類似10X ATAC構(gòu)建Seurat對(duì)象那種方法背伴,不過可能有些麻煩:Seurat 新版教程:分析空間轉(zhuǎn)錄組數(shù)據(jù)
Seurat中如何存儲(chǔ)空間數(shù)據(jù)?
來自10x的visium數(shù)據(jù)包含以下數(shù)據(jù)類型:
- 基因表達(dá)矩陣的點(diǎn)
- 組織切片的圖像(從數(shù)據(jù)采集期間的H&E染色獲得)
- 將原始高分辨率圖像與此處用于可視化的較低分辨率圖像相關(guān)聯(lián)的比例因子
- 在Seurat對(duì)象中峰髓,基因表達(dá)矩陣的spot類似于典型的“ RNA”
Assay
傻寂,但它包含spot水平,而不是單細(xì)胞水平數(shù)據(jù)携兵。 - 圖像本身存儲(chǔ)在Seurat對(duì)象的
images
新插槽中疾掰。 - 所述
images
槽圖還存儲(chǔ)必要的信息,以將spot與其在組織圖像上的物理位置相關(guān)聯(lián)
五徐紧、數(shù)據(jù)預(yù)處理
1. 數(shù)據(jù)標(biāo)準(zhǔn)化 Normalization
與scRNA-seq實(shí)驗(yàn)相似静檬。除了測序深度的差異,對(duì)于空間數(shù)據(jù)集并级,分子計(jì)數(shù)/spot的差異可能很大巴柿,尤其是如果整個(gè)組織的細(xì)胞密度存在差異時(shí)。
plot1 <- VlnPlot(brain, features = "nCount_Spatial", pt.size = 0.5) + NoLegend()
plot2 <- SpatialFeaturePlot(brain, features = "nCount_Spatial") + theme(legend.position = "right")
plot_grid(plot1, plot2)
- 這些圖表明死遭,分子計(jì)數(shù)(molecular counts)在點(diǎn)間的差異不僅是技術(shù)上的广恢,而且還取決于組織的解剖結(jié)構(gòu)(組織中神經(jīng)元耗竭的區(qū)域(如皮層白質(zhì)),可重復(fù)顯示較低的分子數(shù))
- 因此呀潭,標(biāo)準(zhǔn)方法(如LogNormalize函數(shù))可能會(huì)有問題钉迷,因?yàn)樗鼤?huì)強(qiáng)制每個(gè)數(shù)據(jù)點(diǎn)在標(biāo)準(zhǔn)化之后具有相同的底層“大小”underlying ‘size’
- 作為一種替代方法,建議使用
sctransform
(Hafemeister和Satija钠署,已出版)糠聪,它構(gòu)建了基因表達(dá)的正則化負(fù)二項(xiàng)模型,以便在保留生物學(xué)差異的同時(shí)考慮技術(shù)偽像谐鼎。
有關(guān)sctransform的更多信息舰蟆,請(qǐng)參見 here的預(yù)印和here的Seurat教程。sctransform
將數(shù)據(jù)歸一化,檢測高方差特征high-variance features身害,并將數(shù)據(jù)存儲(chǔ)在SCT
assay中味悄。
brain <- SCTransform(brain, assay = "Spatial", verbose = FALSE)
- sct 與 log-normalization的比較
為了探索規(guī)范化方法的差異,我們檢查了sctransform和log規(guī)范化結(jié)果如何與UMI數(shù)量相關(guān)塌鸯。
為了進(jìn)行比較侍瑟,我們首先重新運(yùn)行sctransform
以存儲(chǔ)所有基因的值,然后通過NormalizeData
進(jìn)行 log-normalization 過程丙猬。
# rerun normalization to store sctransform residuals for all genes
brain <- SCTransform(brain, assay = "Spatial", return.only.var.genes = FALSE, verbose = FALSE)
# also run standard log normalization for comparison
brain <- NormalizeData(brain, verbose = FALSE, assay = "Spatial") #這步有些慢
第一次運(yùn)行NormalizeData的報(bào)錯(cuò):"Error: std::bad_alloc".
解決方法:可能是內(nèi)存不夠涨颜,關(guān)掉了沒用的網(wǎng)頁,重新打開Rstudio重新運(yùn)行茧球,問題解決庭瑰。
# Computes the correlation of the log normalized data and sctransform residuals with the number of UMIs
brain <- GroupCorrelation(brain, group.assay = "Spatial", assay = "Spatial", slot = "data", do.plot = FALSE)
brain <- GroupCorrelation(brain, group.assay = "Spatial", assay = "SCT", slot = "scale.data", do.plot = FALSE)
p1 <- GroupCorrelationPlot(brain, assay = "Spatial", cor = "nCount_Spatial_cor") + ggtitle("Log Normalization") +
theme(plot.title = element_text(hjust = 0.5))
p2 <- GroupCorrelationPlot(brain, assay = "SCT", cor = "nCount_Spatial_cor") + ggtitle("SCTransform Normalization") +
theme(plot.title = element_text(hjust = 0.5))
p3 <- plot_grid(p1, p2)
ggsave(p3, filename = "lOG_VS_SCT.png")
- 對(duì)于上面的箱線圖,我們計(jì)算每個(gè)特征(基因)與UMI數(shù)量(此處為變量
nCount_Spatial
)的相關(guān)性抢埋。然后见擦,我們根據(jù)基因的平均表達(dá)量將基因分組,并生成這些相關(guān)系數(shù)的箱線圖羹令。 - 您可以看到 log-normalization 未能使前三組中的基因充分歸一化,這表明技術(shù)因素繼續(xù)影響高表達(dá)的基因的歸一化表達(dá)估計(jì)值损痰。相反福侈,sctransform歸一化實(shí)質(zhì)上減輕了這種影響。
六卢未、基因表達(dá)可視化
在Seurat v3.2中肪凛,我們加入了新的功能來探索和與空間數(shù)據(jù)固有的可視化特性。
Seurat的SpatialFeaturePlot
函數(shù)擴(kuò)展了FeaturePlot
, 可以將表達(dá)數(shù)據(jù)覆蓋在組織組織上辽社。例如伟墙,在這個(gè)小鼠大腦數(shù)據(jù)中,Hpca基因是一個(gè)強(qiáng)烈的海馬區(qū)(hippocampal )marker 滴铅,Ttr是一個(gè)脈絡(luò)叢(choroid plexus)marker戳葵。
SpatialFeaturePlot(brain, features = c("Hpca", "Ttr"))
Seurat中的默認(rèn)參數(shù)強(qiáng)調(diào)分子數(shù)據(jù)的可視化。但是汉匙,您還可以通過更改以下參數(shù)來調(diào)整斑點(diǎn)的大泄八浮(及其透明度),以改善組織學(xué)圖像的可視化:
-
pt.size.factor
-這將縮放斑點(diǎn)的大小噩翠。默認(rèn)值為1.6 -
alpha
-最小和最大透明度戏自。默認(rèn)值為c(1,1)伤锚。 - 嘗試設(shè)置為
alphac
(0.1擅笔,1),以降低具有較低表達(dá)的點(diǎn)的透明度
p1 <- SpatialFeaturePlot(brain, features = "Ttr", pt.size.factor = 1)
p2 <- SpatialFeaturePlot(brain, features = "Ttr", alpha = c(0.1, 1))
plot_grid(p1, p2)
七、降維猛们,聚類和可視化
然后念脯,我們可以使用與scRNA-seq分析相同的工作流程,對(duì)RNA表達(dá)數(shù)據(jù)進(jìn)行降維和聚類阅懦。
brain <- RunPCA(brain, assay = "SCT", verbose = FALSE) #選擇SCT歸一化的assay
brain <- FindNeighbors(brain, reduction = "pca", dims = 1:30)
brain <- FindClusters(brain, verbose = FALSE)
brain <- RunUMAP(brain, reduction = "pca", dims = 1:30)
再然后和二,我們可以在UMAP空間(使用DimPlot
)或使用SpatialDimPlot
將聚類clustering的結(jié)果顯示在圖像上
p1 <- DimPlot(brain, reduction = "umap", label = TRUE)
p2 <- SpatialDimPlot(brain, label = TRUE, label.size = 3)
plot_grid(p1, p2)
由于顏色太多,因此可視化哪個(gè)立體像素voxel屬于哪個(gè)cluster可能是一個(gè)挑戰(zhàn)耳胎。
解決方案:
- 設(shè)置
label
參數(shù)會(huì)在每個(gè)cluster的中間處放置一個(gè)彩色框(請(qǐng)參見上圖)惯吕, - 而SpatialDimPlot的
do.hover
參數(shù)允許交互式地查看當(dāng)前點(diǎn)的標(biāo)識(shí)。
# move your mouse
SpatialDimPlot(brain, do.hover = TRUE)
您還可以在SpatialDimPlot
上使用cells.highlight
參數(shù)在上劃分特定的關(guān)注細(xì)胞怕午,這對(duì)于區(qū)分單個(gè)cluster的空間定位非常有用废登。如下所示:
SpatialDimPlot(brain, cells.highlight = CellsByIdentities(object = brain, idents = c(1, 2, 5, 3,
4, 8)), facet.highlight = TRUE, ncol = 3)
此外,
LinkedDimPlot
和LinkedFeaturePlot
函數(shù)支持交互式可視化郁惜。這些圖將UMAP表示與組織圖像表示聯(lián)系起來堡距,并允許交互選擇。例如兆蕉,您可以在UMAP圖中選擇一個(gè)區(qū)域羽戒,圖像表示中相應(yīng)的點(diǎn)將突出顯示。
LinkedDimPlot(brain)
八虎韵、識(shí)別空間可變特征
Seurat提供了兩種工作流程來識(shí)別與組織內(nèi)空間位置相關(guān)的分子特征易稠。
- 第一種方法,是基于組織內(nèi)預(yù)先標(biāo)注的解剖區(qū)域執(zhí)行差異表達(dá)包蓝,這可以從無監(jiān)督聚類或先驗(yàn)知識(shí)中確定驶社。在這種情況下,此策略將起作用测萎,因?yàn)樯厦娴腸luster顯示出明顯的空間限制亡电。
de_markers <- FindMarkers(brain, ident.1 = 0, ident.2 = 1)
SpatialFeaturePlot(object = brain, features = rownames(de_markers)[1:3], alpha = c(0.1, 1), ncol = 3)
-
第二種方法硅瞧,
FindSpatiallyVariables
在中實(shí)施的是在沒有預(yù)先注釋的情況下搜索展現(xiàn)出空間模式spatial patterning的特征份乒。默認(rèn)參數(shù)(
method = 'markvariogram
)受Trendsceek啟發(fā),該工具將空間轉(zhuǎn)錄組學(xué)數(shù)據(jù)建模為標(biāo)記點(diǎn)過程(mark point process)腕唧,并計(jì)算“variogram”冒嫡,以識(shí)別其表達(dá)水平取決于其空間位置的基因。更具體地說四苇,此過程計(jì)算 gamma(r) 值孝凌,該值測量相距某個(gè)“ r”距離的兩個(gè)點(diǎn)之間的依賴性。默認(rèn)情況下月腋,我們?cè)谶@些分析中使用 r-value為“ 5”蟀架,并且僅計(jì)算可變基因的這些值(變異variation的計(jì)算獨(dú)立于空間位置)以節(jié)省時(shí)間瓣赂。
文獻(xiàn)中有多種方法可以完成此類任務(wù),包括SpatialDE和Splotch片拍。Seurat團(tuán)隊(duì)鼓勵(lì)感興趣的用戶探索這些方法煌集,并希望在不久的將來為其提供支持。
現(xiàn)在捌省,我們可視化此方法確定的前6個(gè)特征的表達(dá)情況苫纤。
top.features <- head(SpatiallyVariableFeatures(brain, selection.method = "markvariogram"), 6)
SpatialFeaturePlot(brain, features = top.features, ncol = 3, alpha = c(0.1, 1))
這步可能有點(diǎn)久
九、可視化解剖區(qū)域中取子集(Subset out)
與單細(xì)胞對(duì)象一樣纲缓,您可以對(duì)對(duì)象進(jìn)行取子集操作卷拘,以便重點(diǎn)集中在處理數(shù)據(jù)的子集。在這里祝高,我們大概將額葉皮層(frontal cortex)進(jìn)行取子集操作栗弟。此過程還有助于在下一節(jié)中將這些數(shù)據(jù)與皮質(zhì)(cortical )scRNA-seq數(shù)據(jù)集整合。
PS:取得子集這步目前還是有些坑
具體請(qǐng)看:http://www.reibang.com/p/497efa6b727f
所以這里往下的我都是用官網(wǎng)的結(jié)果工闺,還沒有嘗試自己跑
- 首先乍赫,我們獲取clusters的子集
cortex <- subset(brain, idents = c(1, 2, 3, 5, 6, 7))
- 然后根據(jù)精確位置進(jìn)一步細(xì)分。
# now remove additional cells, use SpatialDimPlots to visualize what to remove
# SpatialDimPlot(cortex,cells.highlight = WhichCells(cortex, expression = image_imagerow > 400 |
# image_imagecol < 150))
cortex <- subset(cortex, anterior1_imagerow > 400 | anterior1_imagecol < 150, invert = TRUE)
cortex <- subset(cortex, anterior1_imagerow > 275 & anterior1_imagecol > 370, invert = TRUE)
cortex <- subset(cortex, anterior1_imagerow > 250 & anterior1_imagecol > 440, invert = TRUE)
- 取子集后陆蟆,我們可以在完整圖像或裁剪圖像上對(duì)皮質(zhì)細(xì)胞進(jìn)行可視化雷厂。
p1 <- SpatialDimPlot(cortex, crop = TRUE, label = TRUE)
p2 <- SpatialDimPlot(cortex, crop = FALSE, label = TRUE, pt.size.factor = 1, label.size = 3)
plot_grid(p1, p2)
十、與單細(xì)胞數(shù)據(jù)整合進(jìn)行聯(lián)合分析(10X一貫的玩法)
- 在?50um時(shí)叠殷,來自于visium測定的 spots 將涵蓋多個(gè)細(xì)胞的表達(dá)譜改鲫。對(duì)于可獲得scRNA-seq數(shù)據(jù)的系統(tǒng)列表不斷增長,用戶可能有興趣對(duì)每個(gè)空間體素voxels進(jìn)行“反卷積”以預(yù)測細(xì)胞類型的潛在組成溪猿。在準(zhǔn)備此小插圖時(shí),我們使用了參考scRNA-seq數(shù)據(jù)集測試了多種反卷積和整合方法decovonlution and integration
反褶積是對(duì)一個(gè)信號(hào)進(jìn)行濾波以補(bǔ)償一個(gè)不需要的卷積的過程纫塌。反褶積的目的是重現(xiàn)卷積之前的信號(hào)诊县。
使用SMART-Seq2協(xié)議生成的來自Allen研究所的約14,000個(gè)成年小鼠皮質(zhì)細(xì)胞分類學(xué)。我們一直發(fā)現(xiàn)使用整合方法integration (而不是反卷積方法)具有優(yōu)越的性能措左,這可能是由于描述 空間和單細(xì)胞數(shù)據(jù)集的特征的 噪聲模型存在很大差異依痊,并且整合方法經(jīng)過專門設(shè)計(jì)以對(duì)這些差異具有穩(wěn)健性。
因此怎披,我們應(yīng)用了Seurat v3中最近引入的基于“錨”的集成工作流 ‘a(chǎn)nchor’-based integration workflow 胸嘁,該工作流使注釋能夠從reference到查詢集的概率轉(zhuǎn)移probabilistic transfer。因此凉逛,我們利用sctransform歸一化方法遵循此處介紹的標(biāo)簽轉(zhuǎn)移工作流程性宏,但期望新的方法來將被開發(fā)完成此任務(wù)。
我們首先加載數(shù)據(jù)(可在此處下載)状飞,對(duì)scRNA-seq參考進(jìn)行預(yù)處理毫胜,然后執(zhí)行標(biāo)簽轉(zhuǎn)移书斜。該過程為每個(gè)點(diǎn)輸出每個(gè)scRNA-seq派生類的概率分類(a probabilistic classification for each of the scRNA-seq derived classes)。我們將這些預(yù)測添加作為Seurat對(duì)象中的新測定酵使。
allen_reference <- readRDS("~/Downloads/allen_cortex.rds")
# note that setting ncells=3000 normalizes the full dataset but learns noise models on 3k cells
# this speeds up SCTransform dramatically with no loss in performance
library(dplyr)
allen_reference <- SCTransform(allen_reference, ncells = 3000, verbose = FALSE) %>% RunPCA(verbose = FALSE) %>%
RunUMAP(dims = 1:30)
# After subsetting, we renormalize cortex
cortex <- SCTransform(cortex, assay = "Spatial", verbose = FALSE) %>% RunPCA(verbose = FALSE)
# the annotation is stored in the 'subclass' column of object metadata
DimPlot(allen_reference, group.by = "subclass", label = TRUE)
嗯荐吉,然后是經(jīng)典的FindAnchor
anchors <- FindTransferAnchors(reference = allen_reference, query = cortex, normalization.method = "SCT")
predictions.assay <- TransferData(anchorset = anchors, refdata = allen_reference$subclass, prediction.assay = TRUE,
weight.reduction = cortex[["pca"]])
cortex[["predictions"]] <- predictions.assay
現(xiàn)在我們獲得每個(gè)class的每個(gè)的預(yù)測得分。在額葉皮層區(qū)域中特別感興趣的是層狀興奮性神經(jīng)元口渔。在這里样屠,我們可以區(qū)分這些神經(jīng)元亞型的不同順序?qū)樱纾旱念A(yù)測得分缺脉。在額葉皮層區(qū)域中特別感興趣的是層狀興奮性神經(jīng)元痪欲。在這里,我們可以區(qū)分這些神經(jīng)元亞型的不同順序?qū)觭equential layers 枪向,例如:
DefaultAssay(cortex) <- "predictions"
SpatialFeaturePlot(cortex, features = c("L2/3 IT", "L4"), pt.size.factor = 1.6, ncol = 2, crop = TRUE)
基于這些預(yù)測分?jǐn)?shù)勤揩,我們還可以預(yù)測位置受空間限制的細(xì)胞類型。我們使用基于marked point processes的相同方法來定義空間可變特征秘蛔,但是是將細(xì)胞類型預(yù)測得分用作“marks”而不是基因表達(dá)陨亡。
cortex <- FindSpatiallyVariableFeatures(cortex, assay = "predictions", features = rownames(cortex),
r.metric = 5, slot = "data")
top.clusters <- head(SpatiallyVariableFeatures(cortex), 4)
SpatialPlot(object = cortex, features = top.clusters, ncol = 2)
最后,我們證明我們的整合程序能夠恢復(fù)神經(jīng)元和非神經(jīng)元子集的已知空間定位模式深员,包括層狀興奮性负蠕、 layer-1 星形膠質(zhì)細(xì)胞和皮質(zhì)灰質(zhì)。
十一倦畅、在Seurat中處理多個(gè)切片
小鼠大腦的該數(shù)據(jù)集包含與大腦另一半相對(duì)應(yīng)的另一個(gè)切片遮糖。在這里,我們將其讀入并執(zhí)行相同的初始?xì)w一化叠赐。
brain2 <- LoadData("stxBrain", type = "posterior1")
brain2 <- SCTransform(brain2, assay = "Spatial", verbose = FALSE)
為了在同一個(gè)Seurat對(duì)象中使用多個(gè)切片欲账,我們提供了該merge
函數(shù)。
brain.merge <- merge(brain, brain2)
然后芭概,這就使得能夠用聯(lián)合降維并在RNA表達(dá)數(shù)據(jù)的基礎(chǔ)上聚類赛不。
DefaultAssay(brain.merge) <- "SCT"
VariableFeatures(brain.merge) <- c(VariableFeatures(brain), VariableFeatures(brain2))
brain.merge <- RunPCA(brain.merge, verbose = FALSE)
brain.merge <- FindNeighbors(brain.merge, dims = 1:30)
brain.merge <- FindClusters(brain.merge, verbose = FALSE)
brain.merge <- RunUMAP(brain.merge, dims = 1:30)
最后,可以在單個(gè)UMAP圖中共同進(jìn)行數(shù)據(jù)可視化罢洲。SpatialDimPlot
和SpatialFeaturePlot
默認(rèn)情況下會(huì)將所有切片繪制為列踢故,將groupings/features繪制為行。
DimPlot(brain.merge, reduction = "umap", group.by = c("ident", "orig.ident"))
SpatialDimPlot(brain.merge)
SpatialFeaturePlot(brain.merge, features = c("Hpca", "Plp1"))