Hi everyone,
I have a question on using the Stata command lincom and more generally on interaction terms in logit. I have shared a sample problem here to keep it simple. I've reviewed previous posts but I couldn't find any simple examples on estimating the values for OR.
In my analysis the reference categories is White (ib1.AgeGroup), Below 50 (ib1.Ethnicity).
I am calculating Odds Ratios as follows -
My first question is as follows:
Q1)
I'd like to interpret the output from lincom and I have shared a few examples below. I'd like to confirm if my intepretations are accurate.
OR of Black Age 50-60 = exp(-.1920214) = 0.83, i.e., Black individuals between ages of 50-60 are 17% less likely to have the disease compared to White individuals below 50 ... (i)
OR of Black Age Above 60 = exp(-.1303174) = 0.88, i.e., Black individuals above age 60 are 12% less likely to have the disease compared to White individuals below 50 ... (ii)
OR of White Age Above 60 = exp(-1.067821) = .34, i.e., White individuals above age 60 are 66% less likely to have the disease compared to White individuals below 50 ... (iii)
I am aware that I can also get the ORs by summing the coefficients, for eg., Black Age 50-60 = exp(-2.816795 - .6493938 + 3.274167) = 0.83 as in (i)
Q2)
My second question is wrt the p-values. Since none of the p-values were significant we cannot conclude that the true value is not 0. Is the output from the lincom command the correct way to interpret the statistical significance ?
Q3)
Is there any other way to get the output for the individual OR values as I have shared here without having to run lincom multiple times.
test.dta link: Link to Dataset
Thanks very much in advance!
- Raj.
I have a question on using the Stata command lincom and more generally on interaction terms in logit. I have shared a sample problem here to keep it simple. I've reviewed previous posts but I couldn't find any simple examples on estimating the values for OR.
Code:
. codebook AgeGroup
Tabulation: Freq. Numeric Label
174 1 Below 50
160 2 50-60
166 3 Above 60
. codebook Ethnicity
Tabulation: Freq. Numeric Label
123 1 White
223 2 Black
154 3 Other
. logit Disease i.AgeGroup i.Ethnicity ib1.AgeGroup#ib1.Ethnicity Chol
Logistic regression Number of obs = 500
LR chi2(9) = 231.40
Prob > chi2 = 0.0000
Log likelihood = -220.80545 Pseudo R2 = 0.3438
------------------------------------------------------------------------------------
Disease | Coefficient Std. err. z P>|z| [95% conf. interval]
-------------------+----------------------------------------------------------------
AgeGroup |
50-60 | -2.816795 1.136811 -2.48 0.013 -5.044903 -.5886857
Above 60 | -1.067821 .8854477 -1.21 0.228 -2.803267 .6676246
|
Ethnicity |
Black | -.6493938 .659601 -0.98 0.325 -1.942188 .6434004
Other | 2.178724 .5162113 4.22 0.000 1.166968 3.190479
|
AgeGroup#Ethnicity |
50-60#Black | 3.274167 1.238932 2.64 0.008 .8459049 5.702429
50-60#Other | 1.996989 1.176986 1.70 0.090 -.3098599 4.303839
Above 60#Black | 1.586898 .8446274 1.88 0.060 -.0685418 3.242337
Above 60#Other | 1.023928 .8721728 1.17 0.240 -.6854992 2.733355
|
Chol | .1186652 .0320337 3.70 0.000 .0558803 .1814501
_cons | -19.17964 4.669492 -4.11 0.000 -28.33168 -10.0276
------------------------------------------------------------------------------------
I am calculating Odds Ratios as follows -
Code:
//Black, Age 50-60
. lincom 2.AgeGroup + 2.Ethnicity + 2.AgeGroup#2.Ethnicity
( 1) [Disease]2.AgeGroup + [Disease]2.Ethnicity + [Disease]2.AgeGroup#2.Ethnicity = 0
------------------------------------------------------------------------------
Disease | Coefficient Std. err. z P>|z| [95% conf. interval]
-------------+----------------------------------------------------------------
(1) | -.1920214 .5838902 -0.33 0.742 -1.336425 .9523823
------------------------------------------------------------------------------
//Black, Age Above 60
. lincom 3.AgeGroup + 2.Ethnicity + 3.AgeGroup#2.Ethnicity
( 1) [Disease]3.AgeGroup + [Disease]2.Ethnicity + [Disease]3.AgeGroup#2.Ethnicity = 0
------------------------------------------------------------------------------
Disease | Coefficient Std. err. z P>|z| [95% conf. interval]
-------------+----------------------------------------------------------------
(1) | -.1303174 .8125591 -0.16 0.873 -1.722904 1.462269
------------------------------------------------------------------------------
//White, Age Above 60
. lincom 3.AgeGroup
( 1) [Disease]3.AgeGroup = 0
------------------------------------------------------------------------------
Disease | Coefficient Std. err. z P>|z| [95% conf. interval]
-------------+----------------------------------------------------------------
(1) | -1.067821 .8854477 -1.21 0.228 -2.803267 .6676246
------------------------------------------------------------------------------
My first question is as follows:
Q1)
I'd like to interpret the output from lincom and I have shared a few examples below. I'd like to confirm if my intepretations are accurate.
OR of Black Age 50-60 = exp(-.1920214) = 0.83, i.e., Black individuals between ages of 50-60 are 17% less likely to have the disease compared to White individuals below 50 ... (i)
OR of Black Age Above 60 = exp(-.1303174) = 0.88, i.e., Black individuals above age 60 are 12% less likely to have the disease compared to White individuals below 50 ... (ii)
OR of White Age Above 60 = exp(-1.067821) = .34, i.e., White individuals above age 60 are 66% less likely to have the disease compared to White individuals below 50 ... (iii)
I am aware that I can also get the ORs by summing the coefficients, for eg., Black Age 50-60 = exp(-2.816795 - .6493938 + 3.274167) = 0.83 as in (i)
Q2)
My second question is wrt the p-values. Since none of the p-values were significant we cannot conclude that the true value is not 0. Is the output from the lincom command the correct way to interpret the statistical significance ?
Q3)
Is there any other way to get the output for the individual OR values as I have shared here without having to run lincom multiple times.
test.dta link: Link to Dataset
Thanks very much in advance!
- Raj.

Comment