参考链接:
https://github.com/velocyto-team/velocyto.R

http://velocyto.org/velocyto.py/index.html

http://pklab.med.harvard.edu/velocyto/notebooks/R/chromaffin2.nb.html

https://htmlpreview.github.io/?https://github.com/satijalab/seurat-wrappers/blob/master/docs/velocity.html

https://github.com/velocyto-team/velocyto.R/issues/16

https://www.cnblogs.com/raisok/p/12425258.html

# 目录

RNA 速率:软件下载与 loom 文件准备

RNA 速率:数据读入

RNA 速率:使用 Seurat 的结果做 RNA velocity

# 导入 Seurat 以及 loom 对象

>library (Seurat)
## remotes::install_github ('satijalab/seurat-wrappers')
>library (SeuratWrappers)
## 导入 Seurat 对象,之前分析的结果
>load ("wang.rds")
>load ('wang-loom.rds')

# 统一 loom 对象和 Seurat 的细胞名与基因名

> wt$spliced[1:3,1:3]
3 x 3 sparse Matrix of class "dgCMatrix"
          WANG:AAAGTAGAGATGTTAGx WANG:AAACCTGTCAGCATGTx WANG:AAAGCAACATTTGCTTx
AT1G01020                      .                      .                      .
AT1G01030                      .                      .                      .
AT1G03993                      .                      .                      .
> wang@meta.data[1:3,1:3]
                   orig.ident nCount_RNA nFeature_RNA
AAACCTGAGAATTCCC-1        zxz       3756         2158
AAACCTGAGGGCACTA-1        zxz       2774         1669
AAACCTGAGTAATCCC-1        zxz       2463         1290
> colnames(wt$spliced)<-gsub("x","-1",colnames(wt$spliced))
> colnames(wt$spliced)<-gsub("WANG:","",colnames(wt$spliced))
> colnames(wt$unspliced)<-colnames(wt$spliced)
> colnames(wt$ambiguous)<-colnames(wt$spliced)

# 计算 velocity

提取 spliced 与 unspliced 文件,并提取原有的 Seurat 的 UAMP 图

## 由于 Seurat 的对象筛选了数据,所以两个文件细胞并不相同,以 Seurat 对象为准
> wt$spliced<-wt$spliced [,rownames (wang@meta.data)]
> wt$unspliced<-wt$unspliced [,rownames (wang@meta.data)]
> wt$ambiguous<-wt$ambiguous [,rownames (wang@meta.data)]
> sp <- wt$spliced
> unsp <- wt$unspliced
> WTumap <- wang@reductions$umap@cell.embeddings
## 估计细胞和细胞的距离
> cell.dist <- as.dist (1-armaCor (t (wang@reductions$umap@cell.embeddings)))
> fit.quantile <- 0.02
> rvel.cd <- gene.relative.velocity.estimates (sp,unsp,deltaT=2,kCells=10, cell.dist=cell.dist,fit.quantile=fit.quantile,n.cores=24)

# 在 UMAP 聚类图上绘制 RNA velocity

library(ggplot2)
pdf("cell_velocity.pdf",height=6,width=8)
gg <- UMAPPlot(wang)
ggplot_build(gg)$data
colors <- as.list(ggplot_build(gg)$data[[1]]$colour)
names(colors) <- rownames(WTumap)
p1 <- show.velocity.on.embedding.cor(WTumap,rvel.cd,n=30,scale='sqrt',cell.colors=ac(colors,alpha=0.5),cex=0.8,arrow.scale=2,show.grid.flow=T,min.grid.cell.mass=1.0,grid.n=50,arrow.lwd=1,do.par=F,cell.border.alpha =0.1,USE_OPENMP=1,n.cores=24,main="Cell Velocity")
dev.off()

image-20201126161636650

这结果根本看不出啥啊,我选 RC 试试

id<-c ('2','3','19','20')
Cell.sub <- subset (wang@meta.data,seurat_clusters==id)
scRNAsub <- subset (wang, cells=row.names (Cell.sub))
## 后续的操作相同

image-20201126163423850

倒是有个轨迹,但是并不明显

换成 cluster12.14.19 试试

image-20201126164447258

这一次就有一个明显的轨迹了

image-20201126165138374

image-20201126165159845

总体来讲,感觉植物做 RNA velocity 的结果并没有动物的那么好,是自己分析的问题还是其他原因有待商榷。

更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

amane 微信支付

微信支付

amane 支付宝

支付宝