powered by
Functions to compute weighted quantiles and the weighted interquartile range.
wquantile(wt = rep(1,length(x)), x, probs, already.sorted = FALSE, already.normalized = FALSE) wIQR(wt = rep(1,length(x)), x, already.sorted = FALSE, already.normalized = FALSE)
Returns the sample quantiles or interquartile range of a discrete distribution with support points x and corresponding probability masses wt
x
wt
Vector of weights
Vector of data, same length as wt
Numeric vector of probabilities with values in [0,1].
If FALSE, sort wt and x in increasing order of x. If TRUE, it is assumed that wt and x are already sorted.
If FALSE, normalize wt by diving each entry by the sum of all entries. If TRUE, it is assumed that sum(wt)==1
sum(wt)==1
wquantile uses the findInterval function. wIQR calls the wquantile function.
wquantile
findInterval
wIQR
npEM
IQR(1:10) wIQR(x=1:10) # Note: Different algorithm than IQR function wIQR(1:10,1:10) # Weighted quartiles are now 4 and 8
Run the code above in your browser using DataLab