OTU表标准化
程序员文章站
2024-03-01 17:49:22
...
## 回顾:通过聚类我们可以得到2个表 “otu_tax_table.txt”、“otu_tax_table.biom”
## 标准化目的:因为不同测序深度,检测到的物种数量会不同。我们将OTU表重抽样至相同数据量,以公平比较各样品的物种数量。
## 方法一:
# 查看样品的数据量最小值
biom summarize-table -i otu_tax_table.biom
# 基于最小值进行重抽样标准化
single_rarefaction.py -i otu_tax_table.biom -o otu_table_rare.biom -d 2525
# 转换biom为txt格式
biom convert -i otu_table_rare.biom -o otu_table_rare.txt --to-tsv --header-key taxonomy
## 方法二:R包 vegan
setwd("D:/16S/16sRscript")
#!/usr/bin/Rscript
library("vegan")
inputfile = c("otu_tax_table.txt")
outfile = c("otu_table_rare.txt")
data = read.table(inputfile, header = T, row.names = 1,check.names = F, sep = "\t")
tmp = data.frame(taxonomy = data$taxonomy, row.names = row.names(data))
dataS = subset(data, select = -taxonomy)
dataT = t(dataS)
##只标准化
dataB <- data.frame(t(decostand(dataN, "hell")),check.names=F) ## Standardization Methods
##基于最小值进行重抽样标准化
set.seed(1000)
dataN = rrarefy(dataT, min(rowSums(dataT))) ## Rarefaction Species Richness 稀释最少深度
dataB <- data.frame(t(decostand(dataN, "hell")),check.names=F) ## Standardization Methods for Community Ecology 标准化 类似FPKM
data <- merge(dataB, tmp, by=0)
上一篇: 模糊查询的条件拼接(MySql)
下一篇: mysql统计及行列转行
推荐阅读
-
OTU表标准化
-
16S OTU表的处理
-
样式表CSS布局经验
-
16S聚类OTU
-
只需一条语句即可记住所有的ORACLE的系统表 博客分类: 数据库心得体会 oracle系统表语句 转自:http://wulinhaoxia5.iteye.com/blog/1518677 只需一条语句即可记住所有的ORACLE的系统表
-
MySQL建表,主键,外键 博客分类: MySQL MySQL外键
-
mysql分表和分区的区别浅析
-
MySQL之终端Terminal(dos界面)管理数据库、数据表、数据的基本操作
-
SpringBoot JPA 表关联查询实例
-
MySQL数据库查看数据表占用空间大小和记录数的方法