千家信息网

sleuth基于TPM值sleuth进行的差异分析是怎样的

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,这期内容当中小编将会给大家带来有关sleuth基于TPM值sleuth进行的差异分析是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。kallisto等alig
千家信息网最后更新 2024年09月22日sleuth基于TPM值sleuth进行的差异分析是怎样的

这期内容当中小编将会给大家带来有关sleuth基于TPM值sleuth进行的差异分析是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

kallisto等alignment-free转录本定量软件,会给出TPM值的定量结果。基于这种类型的结果进行差异分析时,有两种策略可以选择。

第一种是采用tximportR包,将结果导入到DESeq2种进行分析;第二种是直接采用sleuthR包进行差异分析。本章主要介绍sleuth的使用。

这个包的源代码存放在github上,链接如下

https://github.com/pachterlab/sleuth

github上的R包其安装方式比较特殊, 具体过程如下

source("http://bioconductor.org/biocLite.R")biocLite("rhdf5")library(devtools)install_github("pachterlab/sleuth")

首先从Bioconductor上安装依赖的rhdf5包,因为kallisto的定量结果为HDF5格式,这个R包用来读取数据,然后采用devtools这个R包,自动从github的源代码进行安装。

所有差异分析需要的都是定量结果和样本分组这两个基本元素,只不过不同的R包要求的格式不同。在sleuth中,将这两种信息存储在一个三列的数据框中,示例如下

> s2c    samples   group              paths1 control-1 control kallisto/control-12 control-2 control kallisto/control-23 control-3 control kallisto/control-34    case-1    case    kallisto/case-15    case-2    case    kallisto/case-26    case-3    case    kallisto/case-3

第一列为样本名称,第二列为样本对应的分组信息,第三列为每个样本kallisto定量结果的文件夹。通过这样的一个数据框,就包含了差异分析所需的所有信息。

假定有6个样本,分成control,case 两组, 每组3个生物学重复,可以通过以下代码构建上述的数据框

samples = c("control-1","control-2","control-3","case-1","case-2","case-3")s2c <- data.frame(samples = samples,group   = rep(c("control", "case"), each = 3),paths   = paste("kallisto", samples, sep = "/"))

上述代码要求将所有样本的定量结果放在同一个文件夹下,目录结构如下

kallisto/├── control-1├── control-2├── control-3├── case-1├── case-2└── case-3

上述数据框准备好之后,就可以读取数据进行差异分析了,完整的代码如下

library(sleuth)so <- sleuth_prep(s2c, extra_bootstrap_summary = TRUE)so <- sleuth_fit(so, ~condition, 'full')so <- sleuth_fit(so, ~1, 'reduced')so <- sleuth_lrt(so, 'reduced', 'full')sleuth_table <- sleuth_results(so, 'reduced:full', 'lrt', show_all = FALSE)

上述就是小编为大家分享的sleuth基于TPM值sleuth进行的差异分析是怎样的了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

0