R-将数据框转换为Farrington Algorithm algo.farrington的列表



我有以下示例数据框架:

data.frame(WEEK=c(1:10),YEAR=2000,
           NUMBER=c(0,1,4,25,9,7,4,2,9,12))
   WEEK YEAR NUMBER
1     1 2000      0
2     2 2000      1
3     3 2000      4
4     4 2000     25
5     5 2000      9
6     6 2000      7
7     7 2000      4
8     8 2000      2
9     9 2000      9
10   10 2000     12

我想从R中的surveillance软件包中使用Farrington算法algo.farrington。但是,为了这样做,我的数据必须是类disprogobj的对象。根据我在监视软件包的PDF中发现的示例,结果应为列表。

有人知道如何转换我的数据,以便我可以使算法工作吗?

要处理此类数据,R软件包监视提供了S4类" STS"(监视时间序列),它取代了" Disprog"类。将数据转换为" STS"对象:

x <- data.frame(WEEK=c(1:10), YEAR=2000, NUMBER=c(0,1,4,25,9,7,4,2,9,12))
xsts <- sts(observed = x$NUMBER, start = c(2000, 1), frequency = 52)
xsts

产生:

-- An object of class sts -- 
freq:        52 
start:       2000 1 
dim(observed):   10 1 
Head of observed:
     observed1
[1,]         0

如罗马答案中所示,可以通过sts2disProg()转换为过时的" Disprog"类。但是,此转换不是必需的,因为该函数farrington()可以直接与" STS"对象一起使用(它内部调用algo.farrington())。

软件包作者鼓励使用较新的" STS"类来封装计数时间序列。请参阅http://doi.org/10.18637/jss.ss.s.v070.i10的软件包vignette("monitoringCounts"),以获取爆发检测工具的说明。

类似的东西?

library(surveillance)
x <- data.frame(WEEK=c(1:10),YEAR=2000,
                NUMBER=c(0,1,4,25,9,7,4,2,9,12))
xsts <- sts(observed = x$NUMBER, start = c(2000, 1), frequency = 52)
sts2disProg(sts = xsts)

上面的转换导致"拆卸"对象,该对象如下打印:

-- An object of class disProg -- 
freq:        52 
start:       2000 1 
dim(observed):   10 1 
Head of observed:
     observed1
[1,]         0

相关内容

  • 没有找到相关文章

最新更新