I am trying to compute the 98 percentile value of a normal distribution data set. The data is from this website https://www.cdc.gov/growthcharts/percentile_data_files.htm, file No.8 called "BMIAGE". It's the childhood BMI reference table from CDC.

As you can see, the table has L,M,S,P3,P5,P10,P25,P50,P75,P85,P90,P95,P97 values, and my question is how to use this table to compute 98 percentile value for each age (each row)? Thanks!


1 Answer 1


From the link, you can see at the bottom they provide a formula for calculating the value (x) of a given measurement at a particular z-score or percentile using the following equations:


We can use the qnorm() function from r to get the z-score associated with a particular percentile. For example, qnorm(0.95) = 1.644854 represents the z-score associated with the 95th percentile. In your case, you'll want qnorm(0.98) = 2.053749

From there, we can just carefully input the components into the equation depending on whether or not L = 0. Alternatively, you could do this directly in the Excel workbook with an IF() formula and leveraging Excel's qnorm equivalent formula, =NORM.INV(). For the 98th percentile, you would do: =NORM.INV(0.98, 0, 1).

For the first row of data, the X @ 95th = 20.27052


Your Answer

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