From a Normal Model to a Software Probability
A normal probability question can be answered by standardizing a cutoff and using a standard normal table. Statistical software can do the same calculation directly from the original measurement scale. The key is to specify the model’s mean and standard deviation, and then enter the correct cutoff or pair of bounds.
Software does not decide whether a normal model is appropriate, nor does it know what the numbers in a question represent. It evaluates the probability implied by the inputs. Before calculating, identify the random variable, its units, the model parameters, and whether the question asks for values below, above, or between cutoffs.
The notation \(N(\mu,\sigma^2)\) gives the variance as its second parameter, while common software functions ask for the standard deviation. For example, if \(X\sim N(100,225)\), enter a standard deviation of \(\sqrt{225}=15\), not 225. Confusing variance and standard deviation changes the spread of the model and can produce a very different probability.
Software Commands and Their Inputs
In R, the function pnorm calculates a normal cumulative probability. Its basic form is pnorm(q, mean, sd), where q is the cutoff, mean is \(\mu\), and sd is \(\sigma\). By default, it returns \(P(X\leq q)\). The optional argument lower.tail = FALSE requests the upper-tail probability \(P(X>q)\) directly.
In a spreadsheet that supports NORM.DIST, the form NORM.DIST(x, mean, standard_deviation, TRUE) returns the cumulative probability \(P(X\leq x)\). The final TRUE requests a cumulative probability rather than a density value. A right-tail probability can be obtained by subtracting this result from 1; an interval probability is the difference between two cumulative probabilities.
| Question | R command | Spreadsheet approach |
|---|---|---|
| Below a cutoff \(a\) | pnorm(a, mean, sd) | NORM.DIST(a, mean, sd, TRUE) |
| Above a cutoff \(b\) | pnorm(b, mean, sd, lower.tail = FALSE) | 1 - NORM.DIST(b, mean, sd, TRUE) |
| Between \(a\) and \(b\), \(a<b\) | pnorm(b, mean, sd) - pnorm(a, mean, sd) | NORM.DIST(b, mean, sd, TRUE) - NORM.DIST(a, mean, sd, TRUE) |
In these commands, enter the cutoff values in the same units as the mean and standard deviation. For instance, if a measurement is modeled in centimeters, the mean, standard deviation, and cutoffs must all be in centimeters. The function returns a probability between 0 and 1, not a percentage; multiply by 100 to express it as a percentage.
Worked Example: Probability Below a Cutoff
Suppose a hypothetical machine is modeled as producing parts whose lengths \(X\), in millimeters, follow \(X\sim N(100,225)\). Under this stated model, calculate the probability that a part is shorter than 118 mm.
The mean is \(\mu=100\) mm and the variance is \(225\) square millimeters, so the standard deviation to enter is \(\sigma=\sqrt{225}=15\) mm. The requested probability is a left-tail area:
The equivalent spreadsheet calculation is NORM.DIST(118, 100, 15, TRUE), which gives approximately 0.8849. Because a normal distribution is continuous, \(P(X<118)=P(X\leq118)\); a single exact value has probability zero. Under the model, about 88.49% of parts are shorter than 118 mm. This is a model-based probability, not a claim that the software has observed or counted parts.
Worked Example: Probability Above a Cutoff
A hypothetical instrument’s reading \(X\), in units, is modeled by \(X\sim N(70,64)\). Find the probability that a reading exceeds 82 units.
Here \(\mu=70\) units and \(\sigma=\sqrt{64}=8\) units. The cutoff is 82, so this is a right-tail question. In R, request the upper tail directly:
The spreadsheet calculation is 1 - NORM.DIST(82, 70, 8, TRUE), also approximately 0.06681. As a check on the direction, the cutoff is \( (82-70)/8=1.5 \) standard deviations above the mean, so the probability above it should be less than one-half. The result, about 6.681%, has the expected direction and size. Under the specified model, this is the probability that a reading exceeds 82 units.
Interval Probabilities and Why Subtraction Works
For two cutoffs \(a<b\), the event \(a<X\leq b\) consists of values in the cumulative event \(X\leq b\) after removing the values in \(X\leq a\). Therefore its probability is the difference of the two cumulative probabilities. Since the normal distribution is continuous, including or excluding either endpoint does not change the result.
This identity is the basis of the software calculation for an interval. Calculate the cumulative probability at the larger bound, calculate the cumulative probability at the smaller bound, and subtract the second result from the first. Reversing the order would give a negative number, which cannot be a probability.
Worked Example: Probability Between Two Cutoffs
Suppose a hypothetical measurement \(X\), in seconds, follows \(X\sim N(50,36)\). Calculate the probability that a measurement is between 44 and 59 seconds.
The model has mean \(\mu=50\) seconds and standard deviation \(\sigma=\sqrt{36}=6\) seconds. Use the upper bound first and subtract the cumulative probability at the lower bound:
The equivalent spreadsheet expression is NORM.DIST(59, 50, 6, TRUE) - NORM.DIST(44, 50, 6, TRUE). Under the stated model, about 77.45% of measurements fall between 44 and 59 seconds. The lower cutoff is one standard deviation below the mean, and the upper cutoff is 1.5 standard deviations above it, which is consistent with an interval containing a substantial portion of the distribution.
Why the Software Calculation Is Valid
The software commands evaluate the cumulative distribution function of the specified normal model. Their connection to standard normal probabilities follows from standardization. If \(X\sim N(\mu,\sigma^2)\), then \(Z=(X-\mu)/\sigma\) has the standard normal distribution. Because \(\sigma>0\), dividing by \(\sigma\) preserves the ordering of values. Thus the event that \(X\) is at most \(x\) is exactly the event that \(Z\) is at most \((x-\mu)/\sigma\):
Here \(\Phi\) is the standard normal cumulative distribution function. A software command using the original cutoff, mean, and standard deviation returns the same probability as first converting the cutoff to a z-score and then using a standard normal table. The software simply carries out the calculation numerically, typically with more precision than a printed table.
For an interval, apply the cumulative result at each endpoint and subtract:
This also explains why a normal probability command needs a positive standard deviation. If the scale parameter were not positive, standardization would not describe the stated normal model in the usual way. In ordinary normal models \(\sigma>0\).
Model Checks, Interpretation, and Common Mistakes
A correct command is only one part of a correct probability calculation. Before interpreting its output, check that the normal model is the one the question specifies or that the context supports using it; that the mean and standard deviation refer to the same variable and units as the bounds; and that the tail direction matches the wording. The calculation assumes the random variable follows the specified normal distribution. Software does not test that assumption merely by returning a number.
For a single random variable, independence from other variables is not required to calculate its marginal normal probability. If a problem concerns several variables jointly, dependence may matter, but that is a different modeling question. Here the relevant conditions are the stated normal model and correctly specified parameters and cutoffs.
- Entering variance as the standard deviation. If the model is \(N(100,225)\), the standard deviation is 15. Entering 225 as sd makes the model far more spread out than specified.
- Using a left tail for a right-tail question. pnorm(82, mean = 70, sd = 8) returns the probability below 82, not above it. Use lower.tail = FALSE or subtract the cumulative probability from 1.
- Subtracting interval probabilities in reverse order. For \(a<b\), calculate \(F(b)-F(a)\). Since \(F(b)\geq F(a)\), this gives a nonnegative probability.
- Mixing measurement units. If the mean is in seconds, bounds entered in minutes must first be converted to seconds, or all inputs must be converted consistently.
- Describing a probability as a guaranteed sample percentage. A result of 0.20 means a 20% probability for one draw under the model. It does not guarantee that exactly 20% of any particular finite group will meet the condition.
A useful final check is to ask whether the output is between 0 and 1 and whether its size and direction make sense. For a cutoff well below the mean, a left-tail probability should be small; for a cutoff well above the mean, it should be large. For an interval, the answer cannot exceed either 1 or the probability of a larger event containing that interval.
Check Your Understanding
For each question, identify the required tail or interval and the software inputs before interpreting the result.
- If \(Y\sim N(40,25)\), which standard deviation should be entered in software, and what R command calculates \(P(Y\leq 46)\)?
- A software output for \(P(Y\leq 46)\) is 0.8849. What subtraction gives \(P(Y>46)\), and why?
- For \(W\sim N(12,9)\), write an R expression for \(P(9<W<15)\). Which cumulative probability is subtracted from which?
- Why is it incorrect to enter 25 as the standard deviation when a model is written \(Y\sim N(40,25)\)?
- A normal software function returns a probability of 0.30. Does this establish that the variable is normally distributed? Explain what the function’s output represents.