Is there an analytic/arithmetic method for calculating the standard deviation of a normal distribution given a quantile value of that distribution?

by ctesta01   Last Updated October 09, 2019 21:19 PM

This is an R function I use occasionally:

#' Determine y in the equation `qnorm(mean=m,sd=y,p=p)==x`
get_sd_from_quantile_score <- function(m, p, x) {
  get_quantile_score <- function(y) { 
    qnorm(mean=m,sd=y,p=p)
  }
  f <- function(y) { (get_quantile_score(y) - x)^2 }
  opt <- optim(par = 1, fn = f, method = 'CG')
  return(opt$par)
}

Is there an analytic or arithmetic method/formula that could solve this? Would it be faster to compute?



Answers 1


I believe simply (x-m)/qnorm(p) will do it. qnorm(p) gives you how many standard deviations away from the mean the value is, and then you scale it by the given difference.

Aaron
Aaron
October 09, 2019 20:36 PM

Related Questions


quantile of standardized t distribution

Updated September 22, 2017 11:19 AM


How are percentiles distributed?

Updated August 08, 2015 14:08 PM