根据R,OTU表与元数据表(标题)不匹配

时间:2016-11-18 14:26:01

标签: r dataframe metadata read.table

我已经为此工作了一个多星期了,现在还没有工作。 我正在使用包裹' RAM''在r中,更具体地说是OTU.diversity函数:

*总结OTU表的多样性指数

描述

这些函数计算所有样本的多样性索引,并将输出作为新列附加到元数据表。

用法

OTU.diversity(数据,元) 参数 数据OTU表的列表。 meta元数据以附加输出。

详情

该函数总结了以下多样性指数:specnumber,shannon,simpson,invsimpson,true diversity,evenness,chao和ACE index,给定的otu表。

价值

此函数返回每个样本的多样性索引向量,这些向量附加到给定的元数据表。*

我的命令行是:

tabletemp <- read.table(paste(pathDataAn, "ITS.table.tsv", sep = ""),
                  sep = "\t", header = TRUE, dec = ".", comment.char = "", quote = "", stringsAsFactors = TRUE,
                  as.is = TRUE, check.names = FALSE, colClasses=c("row.names"="character", "taxonomy"="character"))
tabletemp$row.names <- NULL
metatemp <-  read.table(paste(pathDataAn, "ITS.meta.tsv", sep = ""),
                  sep = "\t", header = TRUE, dec = ".", comment.char = "", quote = "", stringsAsFactors = TRUE,
                  as.is = TRUE)
temp2 <- OTU.diversity(list(data=tabletemp), metatemp)

输出说:

.valid.meta(otu,meta = meta)出错:   otu1和meta的样本名称不同。它们可能不正常。 在otu1中,不在meta中:  EM13S01RV EM13S02RV EM13S03FW EM13S03RV ......(我所有样品清单) 在meta中,而不是在otu1:

1,2,3,......

我已经验证每个标题是相同的,并且顺序完全相同。他们都正确安排。 请帮助我,我不明白为什么它似乎没有正确阅读这些表。

1 个答案:

答案 0 :(得分:0)

周末我发现我需要告诉软件列标题(OTU表)与行名称匹配(元数据表)

rownames(metatemp)&lt; - colnames(tabletemp)[ - ncol(tabletemp)]