Je voudrais comprendre ce que fait le code suivant. La personne qui a écrit le code ne travaille plus ici et il est presque complètement sans papiers. Une personne qui pense que " c'est un modèle de régression logistique bayésienne " m'a demandé d'enquêter
bglm <- function(Y,X) {
# Y is a vector of binary responses
# X is a design matrix
fit <- glm.fit(X,Y, family = binomial(link = logit))
beta <- coef(fit)
fs <- summary.glm(fit)
M <- t(chol(fs$cov.unscaled))
betastar <- beta + M %*% rnorm(ncol(M))
p <- 1/(1 + exp(-(X %*% betastar)))
return(runif(length(p)) <= p)
}
Je peux voir qu'elle s'adapte à un modèle logistique, prend la transposition de la factorisation de Cholseky de la matrice de covariance estimée, la multiplie par un vecteur de tirages à partir de et est ensuite ajoutée aux estimations du modèle. Ceci est ensuite prémultiplié par la matrice de conception, le logit inverse de celui-ci est pris, comparé à un vecteur de tirages de U ( 0 , 1 ) et au vecteur binaire résultant retourné. Mais qu'est-ce que tout cela signifie statistiquement?