强制标量在data.table函数参数中接受标量或向量

时间:2017-04-07 23:36:06

标签: r data.table coercion

我希望代码:

datab <- data.table(Events = c(79,68,54), Duration = c(61,44,72))
datab[, .(Poisson.High=poisson.test(Events, T = Duration)$conf.int[2])]

生产:

   nrow Poisson.High
1:    1    1.6140585
2:    2    1.9592319
3:    3    0.9785873

相反,它会产生:

Error in poisson.test(Events, T = Duration) : 
  the case k > 2 is unimplemented

据我了解,这是因为poisson.test的第一个参数可以接受矢量和标量。在矢量情况下,它必须是两个元素而不是更多元素。由于表中有3行,第一行的评估失败,因为它看到一个带有三个元素的向量作为poisson.test的第一个参数。

如何以仅提供与该行关联的标量值的方式引用Events? (我已尝试过Events[1],但出于显而易见的原因,它仅使用datab中的第一行。)

0 个答案:

没有答案