0
$\begingroup$

This might seem like a pretty basic question but I've scoured seemingly everywhere and can't get a definitive answer.

I have a response parameter "rr" bound by 0-1 which is essentially the amount of dollars paid on an account (IE 25 dollars paid on $100 account is rr = 0.25). I've used the "quasibinomial(link="logit")" family on R's glm() to create a model that attempts to explain rr based on a set of characteristics about the individual whom the account belongs to/the account itself.

I have several parameters that are significant to rr, but I am having trouble converting the coefficients into "human speak" for presentation purposes.

I have dummy variables:

  • addr (dummy either 1-0)
  • ph (dummy either 1-0)
  • ssn (dummy either 1-0)

And factor variables:

  • amt_ref (broken up into 7 levels)
  • ins (broken up into 4 levels)

Here is the output:

                    Estimate Std. Error t value Pr(>|t|)    
(Intercept)       -8.6110526  0.1677422 -51.335  < 2e-16 ***
cred_report       -0.7072457  0.0244201 -28.962  < 2e-16 ***
addr               1.4787434  0.0462608  31.965  < 2e-16 ***
ph                 0.5356080  0.0312262  17.153  < 2e-16 ***
ssn                0.0598301  0.0158366   3.778 0.000158 ***
f.amt_ref250       0.0513039  0.0159772   3.211 0.001323 ** 
f.amt_ref500      -0.3376196  0.0218748 -15.434  < 2e-16 ***
f.amt_ref750      -0.5797054  0.0388643 -14.916  < 2e-16 ***
f.amt_ref1000     -0.6933859  0.0557663 -12.434  < 2e-16 ***
f.amt_ref1500     -0.7015057  0.0528595 -13.271  < 2e-16 ***
f.amt_ref1501     -1.0459390  0.0454165 -23.030  < 2e-16 ***
f.ins1            -0.2754546  0.0192811 -14.286  < 2e-16 ***
f.ins2            -0.4947525  0.0395226 -12.518  < 2e-16 ***
f.ins3             0.1570830  0.0183062   8.581  < 2e-16 ***

For the dummy "addr", the way I currently understand is if addr is present (value of 1) then rr will increase by 148%? (so mean_rr*1.47)

Conversely, for "amt_ref", the 250 bucket increases rr by 5% (mean_rr*.05) and then decreases rr by -33% (mean_rr*-.33) and so on.

Essentially, what I'm trying to communicate is "if x dummy variable is present we can predict rr to increase for this account by x percentage".

Hope this makes sense. Thank you in advance.

$\endgroup$
0
$\begingroup$

You cannot do this easily with a logit model. Logit models model the odds (really the log odds) when the outcome is binary; with a continuous outcome ($rr$), this models $\text{log} \left( \frac{rr}{1-rr} \right)$, which is not really interpretable. So, for a dummy predictor with a coefficient of $\beta_1$, the expected difference in $\text{log} \left( \frac{rr}{1-rr} \right)$ between the two categories is $\beta_1$, or the expected factor change in $\frac{rr}{1-rr}$ between the two categories is $e^{\beta_1}$, holding other predictors constant. Neither of these are very satisfying interpretations.

You have a few choices. One is to compute average marginal effects for each predictor. To do this, you would set the value of a predictor to 1 and compute the predicted outcome for all units, then set the value of that predictor to 0 and compute the predicted outcome for all units. The average difference between the predicted values across units is the average marginal effect of the predictor in question. This can be computed as a difference or as a ratio, whichever is easier for you to interpret. The margins package in R makes this fairly straightforward (for differences at least; I'm not sure about ratios). It's important to note that none of the coefficients correspond to the average marginal effects; it is a quantity that depends on the all the coefficients and the values taken on by all units in the sample. Because of this, computing standard errors for average marginal effects can be challenging for nonlinear models.

A second option is to fit a model that yields coefficients that are interpreted in a way closer to what you want. If you fit a quasibinomial model with a log link, then the coefficients (once exponentiated) would be interpreted as the factor change in each predictor holding the other predictors constant. For example, a coefficient of .6 would mean that the expected outcome for the non-reference category is $100(e^.6-1)\% \approx 82\%$ higher than that of the reference category, holding other predictors constant. Problems with a model with a log link are that it may not converge and it may not accurately reflect the data-generating process (i.e., it may not predict the outcome as well as a logit model), but you can assess both of these in your dataset. You can also estimate marginal effects after a log link model.

You could also use the identity link, in which case the coefficients are interpreted as the difference in the outcome between the reference and non-reference categories. This is not a popular model when there are many predictors and it may not converge, but again, you can assess whether this model fits well in your own dataset before proceeding.

$\endgroup$
3
  • $\begingroup$ Thanks for the response. I've used the margins package previously in an attempt to answer these questions, some of the research I've done it appears that margins can be sufficient for ratios. For you second option, in order to use log link I would have to convert rr to a count, no? so rr*100 essentially,. $\endgroup$ – HarrisonS Aug 17 '20 at 16:10
  • $\begingroup$ Adding a link to an example where margins() was used in fractional regression (example is STATA not r): stata.com/stata14/fractional-outcome-models . Here the author uses margins to interpret the effect of a factor variable, can this same logic not also be applied to our dummy variables? $\endgroup$ – HarrisonS Aug 17 '20 at 16:15
  • $\begingroup$ You would have to convert it to a count if you use a quasipoission family, but you can use a log link with quasibinomial. $\endgroup$ – Noah Aug 17 '20 at 18:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.