【发布时间】:2020-03-14 14:04:28
【问题描述】:
我正在尝试使用 seqtime (https://github.com/hallucigenia-sparsa/seqtime) 来分析时序微生物组数据,如下:
meta = data.table::data.table(day=rep(c(15:27),each=3), condition =c("a","b","c"))
meta<- meta[order(meta$day, meta$condition),]
meta.ts<-as.data.frame(t(meta))
otu=matrix(1:390, ncol = 39)
oturar<-rarefyFilter(otu, min=0)
rarotu<-oturar$rar
time<-meta.ts[1,]
interp.otu<-interpolate(rarotu, time.vector = time,
method = "stineman", groups = meta$condition)
插值返回以下错误:
[1] "Processing group a"
[1] "Number of members 13"
intervals
0
12
[1] "Selected interval: 1"
[1] "Length of time series: 13"
[1] "Length of time series after interpolation: 1"
Error in stinepack::stinterp(time.vector, as.numeric(x[i, ]), xout = xout, :
The values of x must strictly increasing
我尝试将方法更改为“hyman”,但它返回以下错误:
Error in interpolateSub(x = x, time.vector = time.vector, method = method) :
Time points must be provided in chronological order.
我使用的是 R 版本 3.6.1,我对 R 有点陌生。
请谁能告诉我我做错了什么/如何解决这些错误? 非常感谢!
【问题讨论】:
标签: r time-series interpolation