3
$\begingroup$

I am doing multiple imputation using chained equations in Stata to deal with item-missing data. One of the variables on which I did imputation was income. However after I did imputation, the imputed values of income contain negative values though the mean and standard deviation of income after imputation are almost similar to those before imputation. I used linear regression to impute income (though the distribution of income in the study population is not normal). While using other options of imputing income such as predictive mean matching, truncated regression, Poisson regression and negative binomial regression, the imputation model fails to converge. How should I deal with such negative imputed values? May I just ignore this and continue with further analysis of my multiple-imputed data?

$\endgroup$
  • $\begingroup$ Are you using Royston's ice package do do the multiple imputation, or the in-built multiple imputation stuff that's been available in Stata since around version 11 or so? $\endgroup$ – Alexis Sep 6 '14 at 15:10
1
$\begingroup$

I think you just continue with your analysis. For one thing, negative income is not impossible. If you lose money (e.g. on investments) and don't make any, that would be negative income.

$\endgroup$
  • $\begingroup$ You raise an interesting point about measurement and interpretation. But what happens if income is measured using brackets starting at zero? Then imputed observations become special in that only they are permitted to have negative incomes. $\endgroup$ – Alexis Sep 6 '14 at 15:54
4
$\begingroup$

If you are using Royston's ice package to do the multiple imputation, you can truncate the distribution of income at 0 with the interval() option. For example, if you wanted to bound income between zero and some maximum:

ice income x1 x2 x3, saving(imputed) m(5) interval(income:0 maxincome)

See help ice##interval for more details. You can also leave the upper end unbounded (not quite sure of the syntax from the documentation, but the author of ice has responded well to my inquiries in the past). ice can be found within Stata by typing:
net describe ice, from("http://www.homepages.ucl.ac.uk/~ucakjpr/stata/")


If you are using Stata's (versions 11 and up) built-in mi command to do the multiple imputation, you can truncate the distribution of income at 0 using the truncreg method for income. For example, if you wanted to bound income between zero and some maximum:

 mi impute chained (truncreg) income, ll(0) ul(maxincome) (regress) x1 x2 x3

If you did not want to specify maxincome:

 mi impute chained (truncreg) income, ll(0) (regress) x1 x2 x3

See both help mi_impute and help mi_impute_truncreg for more details.

$\endgroup$
  • $\begingroup$ I am using Stata's in-built mi impute chained command. I have benefited from your elaborate answer. Thank you Alexis. $\endgroup$ – Ayalew A. Sep 7 '14 at 9:59
  • $\begingroup$ @AyalewA. Sweet! Feel free to up vote my answer and to accept it (by clicking the check mark at the top left of it) if it works best for you. $\endgroup$ – Alexis Sep 7 '14 at 16:25

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.