First I create a random numeric vector using c
with some numbers. To get the empiric probabilities you can use rank
and divide by the number of observations in your vector
using length
. This will calculate the number of observations, in this case 6. After that you can use your created function and call the numeric vector in your function which returns the probabilities as a vector. You can use the following code:
vector <- c(1,0,-1,1,1,0)
get_probs <- function(vector) {
probs <- rank(vector)/length(vector)
return(probs)
}
print(get_probs(vector))
Output:
[1] 0.8333333 0.4166667 0.1666667 0.8333333 0.8333333 0.4166667
Quantiles
You can use the function quantile
like this:
quantile(get_probs(vector))
Output:
0% 25% 50% 75% 100%
0.1666667 0.4166667 0.6250000 0.8333333 0.8333333