2
$\begingroup$

I have transformed my variables using the ln function in Stata in order to solve some issues relating to the assumptions of the linear regression model. Whilst most issues were resolved this way (and this transformation helps out significantly in this), the data seems to be negatively skewed, resulting in a significant IM test as shown below.

Cameron & Trivedi's decomposition of IM-test

---------------------------------------------------
              Source |       chi2     df      p
---------------------+-----------------------------
  Heteroskedasticity |       8.42      7    0.2968
            Skewness |      17.92      3    0.0005
            Kurtosis |       0.51      1    0.4735
---------------------+-----------------------------
               Total |      26.86     11    0.0048

I have previously tried to use mboxcox to find appropriate transformations (my data contains zeros and had to add 1), and I do not find any appropriate transformation apart from the the second and third root for the variables - which is not desirable due to difficulties in interpretation and complications which arise.

Should I be bothered about this skewness issue? Skewness is approx -0.7.

$\endgroup$
8
  • 1
    $\begingroup$ What assumptions of the linear regression model (I assume that you're referring to OLS) is violated by skewness in the <data>? $\endgroup$
    – abaumann
    May 29, 2013 at 15:52
  • $\begingroup$ The skeweness is affecting the normality of residuals, and also the IM-test above. $\endgroup$ May 29, 2013 at 21:04
  • $\begingroup$ Sounds to me like you have an identification problem, then. $\endgroup$
    – abaumann
    May 29, 2013 at 21:17
  • $\begingroup$ I tried using various transformations - boxcox won't work cause of the zeros and even if i take them into consideration the boxcox method suggested using the square/cubic root which could lead to problems in interpretation as indicated above. $\endgroup$ May 29, 2013 at 21:39
  • $\begingroup$ I don't see that square or cube root is more difficult to interpret than log(something + 1). Note that a skewness of 0.7 is positive, not negative. $\endgroup$
    – Nick Cox
    May 29, 2013 at 22:39

2 Answers 2

6
$\begingroup$

1) OLS regression assumes that the residuals are normally distributed, not that the variables are.

2) Skew of 0.7 is pretty minor

3) The idea of "adding 1" to take the log has problems. Why 1? Why not .1? Or .01? Or, for that matter, 100? These would give different results, perhaps substantially so.

4) Often, transformation isn't the right solution to such problems. You could try robust regression, for instance.

Finally, why don't you tell us more about the details of your problem so that we can help more? What are your DV and IVs? What is your N? What are your hypotheses? What are you trying to find out?

$\endgroup$
7
  • $\begingroup$ 1) agreed 2) before log transformation it was much more 3) if i don't add 1 logs can't be used 4) transformation into logs; coupled with regression using robust standard errors solves most of the problems apart from this skewness 5) its a small dataset of approx 700 investments; dependent variable being the investment in millions of pounds, and one of the independent variables is age (which could be 0); and a number of binary variables. $\endgroup$ May 29, 2013 at 21:07
  • $\begingroup$ So just to clarify, age could 0 because the investment is done at the incorporation date. I suspect that adding 1 to all of ages would do not harm, but how will I know that. $\endgroup$ May 29, 2013 at 21:37
  • $\begingroup$ 1) may make the rest of your question moot. 2) OK 3) So, do something else. 4)OK 5) Size of data set is irrelevant. I would try robust regression. $\endgroup$
    – Peter Flom
    May 30, 2013 at 10:14
  • $\begingroup$ 3) such as? Root does not solve the problem. $\endgroup$ Jun 5, 2013 at 14:53
  • $\begingroup$ Such as robust regression. $\endgroup$
    – Peter Flom
    Jun 5, 2013 at 17:08
2
$\begingroup$

So your problem is you have a skewed dependent variable, you want to apply the log transformation but your data contains 0s, and you want to be able to interpret the results. This sounds to me like a good case for not transforming the dependent variable but instead using the log link function. Details can be found here: http://blog.stata.com/2011/08/22/

$\endgroup$
2
  • $\begingroup$ Poisson regression is not relevant here because the dependent variable is not a count. The independent variables are the ones with 0s. $\endgroup$ Jun 5, 2013 at 14:53
  • $\begingroup$ Poisson regression is very relevant even if your dependent variable is not a count, as you can read in the link... $\endgroup$ Jun 5, 2013 at 15:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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