此包的安装很简单那就是:
代码语言:javascript复制Install.packages(“SAVER”)
接下来就是其使用,因为其包含的函数很少,我们主要看下主函数saver的相关系数:
主要的参数:
Do.fast 指是否展示计算过程中的参数显示,默认是TRUE。
Npred 指调用的进程数。
Pred.cells,pred.genes 指需要恢复的特定样本或者特定基因。
Pred.genes.only 指是否对仅特定的基因进行评估。
Estimates.only 指只是显示评估后的表达矩阵。
接下来我们就直接进行实例讲解:
数据的载入,此包的数据输入主要是各基因的reads数:
首先要下载所需要的示例数据,下载地址:https://storage.googleapis.com/linnarsson-lab-www-blobs/blobs/cortex/expression_mRNA_17-Aug-2014.txt
接下来就是数据的载入:
代码语言:javascript复制library(SAVER)
data.path <-"expression_mRNA_17-Aug-2014.txt"
# Need to remove first 10 rows of metadata
raw.data <- read.table(data.path, header= FALSE, skip = 11, row.names = 1, check.names = FALSE)
cortex <- as.matrix(raw.data[, -1])
cellnames <- read.table(data.path, skip= 7, nrows = 1, row.names = 1, stringsAsFactors = FALSE)
colnames(cortex) <- cellnames[-1]
然后是模型的构建:
我们这次选择的运行环境是ubuntu系统下的3.6.1版本的R语言:
代码语言:javascript复制cortex.saver <- saver(cortex, ncores =12)
下图是计算所调用的进程数:
最后我们看下结果的信息:
代码语言:javascript复制str(cortex.saver)
上图所包含的主要参数信息如下:
当然还可以对指定的基因集进行评估:
代码语言:javascript复制genes <- c("Thy1","Mbp", "Stim2", "Psmc6", "Rps19")
genes.ind <- which(rownames(cortex) %in%genes)
# Generate predictions for those genes andreturn entire dataset
cortex.saver.genes <- saver(cortex,pred.genes = genes.ind,
estimates.only =TRUE)
代码语言:javascript复制cortex.saver.genes.only <- saver(cortex,pred.genes = genes.ind,
pred.genes.only = TRUE, estimates.only = TRUE)
如果基因数很多,但是呢计算机内存不够的话,此包还提供了一个功能那就是分离后再合并计算结果:
代码语言:javascript复制
saver1 <- saver(cortex, pred.genes =1:5, pred.genes.only = TRUE,
do.fast = FALSE)
saver2 <- saver(cortex, pred.genes =6:10, pred.genes.only = TRUE,
do.fast = FALSE)
saver3 <- saver(cortex, pred.genes =11:15, pred.genes.only = TRUE,
do.fast = FALSE)
saver.all <- combine.saver(list(saver1,saver2, saver3))
正如他文章中所提到的还可以对基因和样本进行相关性分析:
代码语言:javascript复制saver1.cor.gene <- cor.genes(saver1)
saver1.cor.cell <- cor.cells(saver1)
至此这个包就介绍完毕,虽然很简单,但是拼的是计算机性能,建议直接使用Linux的系统下的R语言,因为widnows容易中断。