J'essaie d'entreprendre une analyse de régression logistique en format R
. J'ai suivi des cours sur ce matériel avec STATA. Je trouve très difficile de reproduire la fonctionnalité dans R
. Est-il mature dans ce domaine? Il semble y avoir peu de documentation ou de conseils disponibles. La production du rapport de cotes semble nécessiter une installation epicalc
et / ou epitools
/ et d’autres, sans que je puisse me mettre au travail, sont périmées ou manquent de documentation. J'ai l'habitude glm
de faire la régression logistique. Toute suggestion serait la bienvenue.
Je ferais mieux d'en faire une vraie question. Comment exécuter une régression logistique et générer des cotes de cotes dans R
?
Voici ce que j'ai fait pour une analyse univariée:
x = glm(Outcome ~ Age, family=binomial(link="logit"))
Et pour les variables multiples:
y = glm(Outcome ~ Age + B + C, family=binomial(link="logit"))
Je l' ai ensuite regardé x
, y
, summary(x)
et summary(y)
.
Est x$coefficients
de n'importe quelle valeur?
la source
cbind( exp(coef(x)), exp(summary(x)$coefficients[,1] - 1.96*summary(x)$coefficients[,2]), exp(summary(x)$coefficients[,1] + 1.96*summary(x)$coefficients[,2]) )
. Il y a aussi la méthode delta: ats.ucla.edu/stat/r/faq/deltamethod.htmVous avez raison de dire que la sortie de R ne contient généralement que des informations essentielles et que d’autres doivent être calculées séparément.
coefficients()
vous donne les paramètres de régression estimés . Il est cependant plus facile d’interpréter (à l’exception de l’interception). e x p ( b j )Pour obtenir le rapport de cotes, nous avons besoin du tableau croisé de classification du DV d'origine dichotomique et de la classification prédite en fonction d'un seuil de probabilité qu'il convient de choisir en premier. Vous pouvez également voir la fonction
ClassLog()
dans le packageQuantPsyc
(comme chl mentionné dans une question connexe ).Pour le rapport de cotes, vous pouvez utiliser un package
vcd
ou effectuer le calcul manuellement.la source
logit
etlogistic
obtenir facilement des rapports de cotes et des intervalles de confiance. Je suis un peu frustré que cela semble être si compliqué et non standard dansR
. Puis-je simplement utiliserexp(cbind(coef(x), confint(x)))
la réponse de fabians ci-dessous pour obtenir l'OD et l'IC? Je ne suis pas clair ce que votre réponse fournit?cTab
partie de ma réponse). Mais maintenant, je vois que vous voulez probablement juste dire : comme l'explique fabians, est égal au facteur selon lequel les probabilités prédites changent lorsque augmente de 1 unité. C'est le rapport entre les chances "après l'augmentation de 1 unité" et "avant l'augmentation de 1 unité". Donc, oui, vous pouvez simplement utiliser la réponse fabians. e x p ( b j ) X jLa page de statistiques de UCLA propose une régression logistique en R. Elle comprend une brève section sur le calcul des rapports de cotes.
la source
Le paquet epiDisplay le fait très facilement.
la source
outreg
ouxtable
?