# z-interval and sample size what is a normal sample size

Can a Z-interval be used when the sample size is between 15-30? does the variable play a role? I'm not too sure if it makes a difference.

I know it can be used if the population is a normal or large sample size but is 15-30 consider a normal size

-

$15$ is reasonably large if the underlying distribution is somewhat spread out with no large bumps. I'm not sure I'm prepared to make that statement logically precise right now. But one situation where the central limit theorem should not be cited is when you've got a binomial distribution in which the sample has only a small number ($<5$?) of successes or only a small number of failures. Another is a Poisson distribution in which the count is similarly small.

-

I will assume that you are approximating probabilities from a binomial distribution by probabilities from a normal distribution. So most of this answer deals with that, with a few remarks about distributions other than the binomial.

With sample sizes that small, the error in the approximation could be unacceptably large, particularly if in the binomial distribution the probability $p$ of success in an individual trial is far from $1/2$ in either direction.

The error may be acceptably small if in the approximation process, you use the Continuity Correction.

Briefly, if $X$ is the number of successes in $n$ independent trials, where the probability of success on any trial is $p$, then the mean of $X$ is $np$, and the standard deviation of $X$ is $\sqrt{np(1-p)}$. To apply the continuity correction, you approximate the probability that $X\le a$, where $a$ is an integer, by the probability that a standard normal $Z$ is less than or equal to $$\frac{a+\frac{1}{2}-np}{\sqrt{np(1-p)}}.$$

In other situations, a continuity correction will not be appropriate. For example, as you point out, if $X$ is the sum of $n$ independent normally distributed random variables $X_i$, then $X$ has precisely a normal distribution. If the means and variances of the $X_i$ are known, then a calculation that uses the normal with appropriate mean and variance will be exact.

If $X$ is a sum $X_1+X_2+\cdots+X_n$ of independent identically distributed random variables with known continuous distribution, and you are using the normal to approximate the distribution of $X$, a "continuity correction" is not appropriate.

In general, if the distributions of the $X_i$ are quite skewed, the normal approximation to $X$ may not be good if $n$ is in the range $15$ to $30$. If the distribution of the $X_i$ is very skewed, the normal approximation nay be bad even for much larger $n$.

Comments: $1$. Let $X$ be the number of successes in $n$ independent trials, where the probability of success on any trial is $p$. Then $X$ has binomial distribution. The probability that the number of successes is $\le m$ is equal to $$\sum_{k=0}^m \binom{n}{k}p^k(1-p)^{n-k}.$$ In the old days, evaluating this kind of sum, even for $n$ of medium size like $100$, was unbearably tedious. Nowadays, many pieces of software can compute the sum easily. So in this case there is much less need of approximate procedures than there used to be.

$2$. Statisticians developed several criteria to decide when the normal approximation to the binomial is acceptably accurate. These are rough rules of thumb, not laws of nature. The approximation does not magically turn from bad at $n=30$ to good at $n=31$. And even for $n$ like $100$, the normal approximation will be pretty bad if the probability $p$ of success on any trial is small, like $1/100$, or large, like $99/100$.

-
Rather than talking about small probabilities of success (and small probabilities of failure) you should refer to small values of $np$ or $nq$ ---- the expected number of successes or failures. Often the rule of thumb is that these should be at least $5$. It's surprising (to me) how accurate the normal approximation is when $n=1$ and you use a continuity correction. The largest possible error is only about $0.03$. (!) But if $p=1/100$ and $n=100000000000$, then the normal approximation is not bad, so just talking about $p$ being small without also mentioning $n$ isn't really to the point. – Michael Hardy Jan 26 '12 at 2:40
@Michael Hardy: At the end, there is explicit mention of $n=100$. There it is written that normal approximation is not good if $p=1/00$ or $p=99/100$. – André Nicolas Jan 26 '12 at 2:49
In my reading of the question, it seems more likely that the OP is trying to decide between the use of a critical value from a $t$-distribution or that from the normal as the scale factor on the standard error when constructing a confidence interval. (Of course, I could be wrong.) – cardinal Jan 26 '12 at 2:59
@cardinal it reads much more to me like OP is trying to decide if he has enough data to profitably apply the central limit theorem. He doesn't believe that his data has an underlying normal distribution but wants to make a confidence interval for the mean and so wants to appeal to the CLT. – guy May 27 '12 at 18:56

Michael Hardy's advice is sound as far as rules of thumb go. I thought I would supplement other answers by suggesting a way that one might evaluate whether or not the sample mean is approximately normally distributed.

The essential tool is the bootstrap. If you have $N$ observations, draw $X_1 ^*, ..., X_N ^*$ (WITH replacement)from the empirical distribution that takes value $X_i$ with probability $\frac 1 N$, and form a new sample mean $\bar X^*$. Do this over and over some large number (say $M$) of times and then look at the distribution of $\bar X_1 ^*, ..., \bar X_M ^*$. If it looks approximately normal than it suggests that the normal approximation is good.

Here's some code implemented in R illustrating what goes on when the underlying distribution is $\mbox{Exp}(1)$.

X = rgamma(15, 1, 1);

M = 5000;

bootmeans = numeric(length = M);

for(i in 1:M){

  Xstar = sample(X, replace = TRUE);

bootmeans[i] = mean(Xstar);


}

plot(density(bootmeans));

Xbar = mean(X);

sigma = sqrt(var(X));

foo = function(x){dnorm(x, Xbar, sigma / sqrt(15))}

grid = seq(0, 4, .02);

lines(grid, foo(grid), col = "red")

-