【发布时间】:2013-06-25 13:42:48
【问题描述】:
我想重用模拟列联表的 stats 包中的 R 代码来计算模拟的 p.value 以进行卡方检验。
查看chisq.test函数源码时,可以看到如下:
if (simulate.p.value && all(sr > 0) && all(sc > 0)) {
setMETH()
tmp <- .Call(C_chisq_sim, sr, sc, B, E)
STATISTIC <- sum(sort((x - E)^2/E, decreasing = TRUE))
PARAMETER <- NA
PVAL <- (1 + sum(tmp >= almost.1 * STATISTIC))/(B +
1)
}
这里有趣的是.Call调用:
tmp <- .Call(C_chisq_sim, sr, sc, B, E)
如果可能的话,我想做的是在我自己的代码中使用这个C_chisq_sim 函数,但我无法做到。如果我尝试:
tmp <- .Call(C_chisq_sim, sr, sc, B, E, PACKAGE="stats")
我收到 C_chisq_sim object not found 错误。如果我尝试:
tmp <- .Call("C_chisq_sim", sr,sc,B,E, PACKAGE="stats")
我收到一条错误消息,指出入口点不在加载表中。
如果可能的话,我想要一个跨平台的解决方案。
【问题讨论】:
标签: r