# How to compute Nth percentile data from other percentile data of a normal distribution?

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!

• This doesn't seem to be a programming question. If you are looking for ways to estimate statistics from limited summary data, then maybe you should be asking for help at Cross Validated where statistical questions are on topic. Seems like you'll have to make some sort of modeling assumption in order to do this. – MrFlick Feb 6 '19 at 17:34

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:

$X&space;=&space;M&space;(1&space;+&space;LSZ)^{1/L},&space;L\neq&space;0$

or

$X&space;=M&space;e&space;^{SZ},&space;L&space;=&space;0$

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