Je veux calculer la matrice de chapeau directement dans R pour un modèle logit. Selon Long (1997), la matrice chapeau pour les modèles logit est définie comme suit:
X est le vecteur de variables indépendantes et V est une matrice diagonale avec sur la diagonale.
J'utilise la optim
fonction pour maximiser la probabilité et dériver la toile de jute. Donc je suppose que ma question est: comment puis-je calculer dans R?
Remarque: Ma fonction de vraisemblance ressemble à ceci:
loglik <- function(theta,x,y){
y <- y
x <- as.matrix(x)
beta <- theta[1:ncol(x)]
loglik <- sum(-y*log(1 + exp(-(x%*%beta))) - (1-y)*log(1 + exp(x%*%beta)))
return(-loglik)
}
Et je nourris ceci à la fonction optim comme suit:
logit <- optim(c(1,1),loglik, y = y, x = x, hessian = T)
Où x est une matrice de variables indépendantes et y est un vecteur avec la variable dépendante.
Remarque: je sais qu'il existe des procédures prédéfinies pour ce faire, mais je dois le faire à partir de zéro