KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm using the function multinom from the nnet package to run a multinomial logistic regression. In multinomial logistic regression, as I understand it, the coefficients are the changes in the log of the ratio of the probability of a response over the probability of the reference response (i.e., ln(P( i )/P( r ))=B 1 +B 2 *X... where i is one response category, r is the reference category, and X is some predictor). However, fitted(multinom(...)) produces estimates for each category, even the reference category r . EDIT Example: set.seed(1) library(nnet) DF <- data.frame(X = as.numeric(rnorm(30)), Y = factor(sample(letters[1:5],30, replace=TRUE))) DF$Y<-relevel(DF$Y, ref="a") #ensure a is the reference category model <- multinom(Y ~ X, data = DF) coef(model) # (Intercept) X #b 0.1756835 0.55915795 #c -0.2513414 -0.31274745 #d 0.1389806 -0.12257963 #e -0.4034968 0.06814379 head(fitted(model)) # a b c d e #1 0.2125982 0.2110692 0.18316042 0.2542913 0.1388810 #2 0.2101165 0.1041655 0.26694618 0.2926508 0.1261210 #3 0.2129182 0.2066711 0.18576567 0.2559369 0.1387081 #4 0.1733332 0.4431170 0.08798363 0.1685015 0.1270647 #5 0.2126573 0.2102819 0.18362323 0.2545859 0.1388516 #6 0.1935449 0.3475526 0.11970164 0.2032974 0.1359035 head(DF) # X Y #1 -0.3271010 a To calculate the predicted probability ratio between response b and response a for row 1, we calculate exp(0.1756835+0.55915795*(-0.3271010)) =0.9928084. And I see that this corresponds to the fitted P(b)/P(a) for row 1 ( 0.2110692/0.2125982 =0.9928084). Is the fitted probability for the reference category calculated algebraically (e.g., 0.2110692/exp(0.1756835+0.55915795*(-0.3271010)) )? Is there a way to obtain the equation for the pr
Tags (comma-separated)
Save Edits
Cancel