美文网首页
STAMP分析扩增子测序组间差异

STAMP分析扩增子测序组间差异

作者: 超人立志做国王 | 来源:发表于2019-01-27 12:00 被阅读0次

STAMP软件安装

软件官网 http://kiwi.cs.dal.ca/Software/STAMP

1. Microsoft Windows系统安装比较简单

2. ubuntu安装

```

# 首先使用apt安装pyqt4

sudo apt install python-qt4

# virtualenv 创建单独的python环境并能访问系统python包(为了使用pyqt4)

virtualenv stamp --python=python2.7 --system-site-packages 

# 激活环境

source activate stamp/bin/activate

pip install numpy matplotlib biom-format STAMP

# 使用

./stamp/bin/STAMP

```

也可以使用gnome-desktop-item-edit命令创建快捷方式。下图是stamp环境的python包列表。

pip list

conda 安装

```

conda create -n stamp stamp  fontconfig freetype icu=56

```

准备数据

16S或者ITS测序分析,最后会得到feature-table(OTU table) 和feature(OTU)的物种注释信息,feature-table通常是biom的格式, 物种注释信息是tab分隔的文本文件。

使用biom软件将两者结合,并转换为tab分隔的文本文件,代码如下:

```

biom add-metadata -i feature-table.biom -o feature-table-tax.biom --observation-metadata-fp taxonomy.tsv --sc-separated taxonomy --observation-header OTUID,taxonomy

biom  convert -i feature-table-tax.biom -o feature-table-tax.tsv --to-tsv --table-type "OTU table" --header-key taxonomy

```

结果如下图所示:

准备数据

因为STAMP需要严格的层级关系,而我们得到的物种注释信息一般满足不了该要求,直接导入STAMP会报错,所以将数据转换为8个级别,分别是OTU,Kingdom,Phylum,Class,Order,Family,Genus,Species,然后在每一个级别上单独分析。在这里使用R进行转换,代码如下:

```

library(tidyverse)

# 导入数据

levels <- c("Kingdom","Phylum","Class","Order","Family","Genus","Species")

data <- read_tsv("feature-table-tax.tsv", skip = 1) %>%

  rename(OTU=`#OTU ID`) %>%

  mutate(taxonomy = str_replace_all(taxonomy, "[kpcofgs]__", "")) %>%

  separate(taxonomy, sep="; ", levels)

# 将没有分类的级别标注为 "unclassified"

data[is.na(data)]="unclassified"

data[data==""]="unclassified"

 #Samples number

number <- dim(data)[[2]]-8

#OTU level

otu <- data %>% select(1:(number+1))

write_tsv(otu, "otu.spf")

# Phylum -> Species level

for (level in levels){

  n <- which(colnames(data)==level)

  temp <- data %>% select(n, 2:(number+1))

  colnames(temp)[1]='index'

  temp <- temp %>% gather("Sample", "Count", -index) %>%

    group_by(index, Sample) %>%

    summarise(Count = sum(Count)) %>%

    spread(key = Sample, value = Count)

  colnames(temp)[1]=level

  write_tsv(temp, paste0(level, ".spf", collapse = ""))

}

```

这会生成8个spf文件,其本质是tab分隔的文本文件,这就是要向STAMP导入的数据。

spf文件 Phylum.spf(spf文件示例)

另外还要向STAMP导入实验设计文件,文件内容如下(可以有多列分组信息,例如group, subgroup,这里只有一列):

sample-metadata.tsv

分析

1. 导入数据

从File -> Load data导入数据,以 Genus Level 为例,如下图所示

Load data

2. 导入数据后可以直接查看PCA分析结果,也可以选择不同的统计分析方法进行分析,支持多组间(>=3组)分析,也可以选择两组或者两个样本比较。

分析选项

分析结果

统计分析可视化结果和表格均可以导出。

PCA plot boxplot Extended error bar plot

相关文章

  • STAMP分析扩增子测序组间差异

    STAMP软件安装 软件官网http://kiwi.cs.dal.ca/Software/STAMP 1. Mic...

  • 在线作图丨差异分析——在线做Stamp分析

    Q1:什么是RDA分析?Stamp软件是一款用于组间差异分析的软件,适用于多种类型的组间差异分析,比如物种分布及丰...

  • 组间差异分析神器-STAMP

    在微生态研究中,当我们做完16S或宏基因组测序等多样性测序后,想找出不同处理组之间差异物种或差异基因,一般常用的组...

  • Qplottools012-STAMP两组间差异分析

    做组间差异分析,我们常用到STAMP软件,今天这个工具主要是模仿里面的两组差异分析功能,并且扩展了一些图表类型。很...

  • 组间差异分析神器-STAMP | 分析技能

    在微生态研究中,当我们做完16S或宏基因组测序等多样性测序后,想找出不同处理组之间差异物种或差异基因,一般常用的组...

  • Qiime1-17.PICRUSt-16S预测宏基因组?

    16S扩增子测序是对细菌中具有代表性的序列进行测序,相比宏基因组测序,16S扩增子测序无法提供基因功能信息,只能给...

  • STAMP

    STAMP是对两组或多组样本在任何分类水平进行显著性差异分析的软件包,包括物种和功能差异分析。 两组分析时,统计检...

  • 标准化之CPM/RPKM/FPKM/TPM

    -差异分析时,需考虑实验设计(样本组成)和测序原理向(测序深度、基因长度、RNA 组成)-转录组下游分析时,采用D...

  • 转录组数据分析—DEseq2差异分析

    转录组测序的目的之一,就是探索组间显著表达变化的基因——差异表达基因。那么,如何基于转录组测序获得的定量表达值,识...

  • 在线作图|在线做Metastats组间差异分析

    Metastats组间差异分析 Metastats组间差异分析与LEfSe类似,也是多用于寻找不同区组中微生物群落...

网友评论

      本文标题:STAMP分析扩增子测序组间差异

      本文链接:https://www.haomeiwen.com/subject/wmdgjqtx.html