0

我正在尝试计算 R 中的对数似然比检验,但遇到了一些困难。

出于某种原因,我不断得到一个负对数似然值,这是不可能的,我不知道原因。

是我正在使用的数据。

这是到目前为止的代码:

我试图检验均值不等于 (1,1,1) 的零假设我将协方差矩阵乘以 (n4-1)/n4 的原因是我需要将协方差除以 n,而不是 n -1,cov 函数将矩阵除以 n-1。

data <- read.csv('dat1.csv')
data <- data[, 2:4]
datamat <- as.matrix(data, nrow=25, ncol=3)

mu0_4 <- c(1,1,1)
n4 <- dim(datamat)[1]

xbar4 <- colMeans(datamat)
hs4 <- cov(datamat - xbar4)*(n4-1)/n4
det_hs4 <- det(hs4)
det_hs4

hs04 <- cov(datamat - mu0_4)*(n4-1)/n4
det_hs04 <- det(hs04)
det_hs04

LRS <- (det_hs4/det_hs04)^(n4/2)
l_lrs <- -2*log(LRS)
l_lrs 

我不确定我得到负值的原因,但如果有人可以给我一些建议,我将不胜感激。

感谢您阅读

4

1 回答 1

0

我认为你在代码中犯了一个错误。在(datamat - xbar4)减法中按行发生。尝试

sweep(datamat, 2, xbar4 , "-")

我不知道你为什么说负对数似然值不能是负数。通常,它们是负面的。也许你的意思是LRS。

于 2018-03-02T06:17:45.053 回答