# Sampling with unequal bins?

I have a very simple model. This model uses data that are not given as continuous distributions, but are described by percentiles. What is the best way to sample these percentile bins, when the bins are of unequal size?

So, for example, to select the body weight for a given individual, I pick a random number between 0-100, then match this value to the nearest percentile. I don't interpolate or extrapolate, I just match the value I draw to the nearest bin. (Extrapolating isn't a good idea given the data.) Let's say, for body weight, the percentiles I have are 25, 50 and 75. But this gives bin sizes of 37.5 (0-37.5), 25 (37.5-62.5), and 37.5 (62.5-100). So because of the unequal bin sizes, I'm going to be sampling both the 25% and 75% bins much more than I'll be sampling the median, 50%, bin. This is the opposite of what I'd like to happen.

I could weight the bins, but that seems arbitrary. Or, instead of drawing my random number from a uniform distribution 0-100, I could draw it from a normal distribution centered at the median, but that also seems arbitrary. Or, alternatively, I'd love to be convinced that I don't actually have a problem here.

Any ideas on how I could better set this up? Thanks!

-
How many percentiles are included in your real data? I hope it's more than in your example! –  onestop Oct 20 '10 at 15:04
It depends on the factor I'm using. For body weight, I'm actually using more percentiles. But for something like dust ingestion rates, which has less observed measurements, I am using as few as four percentiles. –  Melissa Oct 20 '10 at 16:45
For body weights we can expect a power between 1/2 and 1/3 to be normally distributed. By trial and error you can find a power that symmetrizes the percentiles (specifically, look for a $p$ for which $q_{50}^p - q_{25}^p$ is approximately equal to $q_{75}^p - q_{50}^p$). The transformed percentiles easily determine a unique Normal distribution: $q_{50}^p$ is its mean and the scaled IQR $(q_{75}^p - q_{25}^p) / 1.349$ is its standard deviation. To obtain a random body weight, draw from this normal and invert the transformation (that is, apply the $1/p$ power).