为什么R中'glmer'的方差协方差矩阵是不对称的?

为什么R中'glmer'的方差协方差矩阵是不对称的?,r,error-handling,rounding,glm,mixed-models,R,Error Handling,Rounding,Glm,Mixed Models,我不明白方差-协方差矩阵怎么可能不是对称的。 这是因为数字四舍五入的方式吗 如果我们以merDeriv软件包中给出的示例来获得完整的方差协方差矩阵(固定和随机参数): 包含在西格玛的rtmvnorm函数中(用于生成随机数的协方差矩阵) 我该怎么办?试试issymmetry(unname(nnn))。从帮助页对称对称< /代码>,章节细节:“注意,如果M的矩阵名和它的名字是相同的,那么矩阵M只是对称的。请考虑使用unNoM(m)”,事实上,这会导致我的代码出现错误。isSymmetric包含在包函

我不明白方差-协方差矩阵怎么可能不是对称的。 这是因为数字四舍五入的方式吗

如果我们以
merDeriv
软件包中给出的示例来获得完整的方差协方差矩阵(固定和随机参数):

包含在西格玛的
rtmvnorm
函数中(用于生成随机数的协方差矩阵)


我该怎么办?

试试
issymmetry(unname(nnn))
。从帮助页<代码>对称对称< /代码>,章节细节:“注意,如果M的矩阵名和它的名字是相同的,那么矩阵M只是对称的。请考虑使用unNoM(m)”,事实上,这会导致我的代码出现错误。
isSymmetric
包含在包函数中。我通过强制矩阵对称来解决这个问题。
lme4fit <- glmer(corr ~ jmeth + (1 | item), data = finance,
                  family = binomial, nAGQ = 20)
 # variance covariance matrix for all parameters
 nnn=vcov(lme4fit, full = TRUE, ranpar = "var")
 isSymmetric(nnn)
[1] FALSE
checkSymmetricPositiveDefinite(H, name = "H")