I had to take the log of my data, and now I want to test for normality of my data. Can I use the standard normality tests or do I have to use some special test? I used the swilk command in Stata to test for normality.

  • $\begingroup$ I have removed the logarithmic-series tag (substituting a couple of others that apply). The logarithmic-series tag refers to this discrete distribution which I don't think comes in here. $\endgroup$ – Glen_b Feb 1 '16 at 1:48
  • $\begingroup$ No worries -- it didn't have the tag-summary that would have told you what it was for, so you had no easy basis on which to know it was for something else. I have now fixed it, putting a tag wiki and tag wiki extract (which explains when to use it) on that tag. (However, I wonder if there's much need for the tag, since it has only been used twice in 5 months). I'll probably delete these comments soon. $\endgroup$ – Glen_b Feb 1 '16 at 2:13

You don't need a special test to test normality after taking logs; Shapiro Wilk works fine for that purpose.

However, it's quite rare that an explicit test of normality is really a particularly useful thing to do (it's a pity, I'm quite fond of goodness of fit tests and have read a lot of papers about the topic -- hundreds of them -- but they're of practical use in only a few situations).

People often do it (test normality) when they want to check assumptions for some form of inference that relies on a normality assumption, but it's almost no use for that for a fairly long list of reasons.

Here's a couple of them

  • such tests tend to reject with large sample sizes, and that's when normality usually matters least. On the other hand, when it matters most (at small sample sizes) they have little power. So by using one to figure out whether you can use your normal theory procedure you'll tend to avoid using it when there's no problem at all and feel happy about going ahead when you shouldn't -- it will often lead you to take exactly the wrong action.

  • the hypothesis test simply answers the wrong question in any case. You already know you won't have exact normality (what are the chances that it's actually true?), so it's pointless to test something you already know the answer to, and knowing the answer is no use. What matters is the impact of the kind of non-normality you have on your inference and the test tells you nothing about that.

  • by predicating your inference on the outcome of the test ("if I reject normality I will do this and if I don't I will do that), you alter the properties of the subsequent inference -- standard errors and p-values and confidence intervals don't have the properties you expect when you do that (in both arms -- whether you do "this" or "that", you won't get what you expect). Better to understand how your procedure responds to various forms of and amounts of non-normality (e.g. via using simulation) and either rely on what's understood about your data-process to decide you won't be badly impacted if you assume normality or to simply go to something that doesn't require a normality assumption at all. (Another option would be to take a hold-out sample to check viability of model assumptions on if you have the data to do that with, but even then I wouldn't test the assumptions, I'd be looking at something nearer to an effect size.)

| cite | improve this answer | |
  • $\begingroup$ Thank you so much. You went above and beyond and I appreciate it so much! $\endgroup$ – Beckie Rohr Feb 1 '16 at 1:37

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.