Skip to contents

Calculates a wage (or value) compression ratio by dividing one quantile by another, typically the 90th percentile divided by the 10th percentile. This provides a measure of wage inequality or spread within a group.

Usage

cp_ratio(x, upper = 0.9, lower = 0.1, na.rm = TRUE)

Arguments

x

A numeric vector of values (e.g., wages or salaries).

upper

Numeric; the upper percentile to compute (default is `0.9` for the 90th percentile).

lower

Numeric; the lower percentile to compute (default is `0.1` for the 10th percentile).

na.rm

Logical; if `TRUE`, missing values (`NA`) are removed before computation. Defaults to `TRUE`.

Value

A numeric value representing the ratio of the specified upper to lower percentile values. Returns `NA_real_` if computation is not possible (e.g., due to missing data or zero denominator).

Details

The function computes the specified upper and lower quantiles and returns their ratio (`upper / lower`). If either quantile is `NA` or the lower quantile is zero, the function returns `NA_real_`.

Examples

wages <- c(1000, 1200, 900, 3000, 5000, NA)
cp_ratio(wages)             # default 90/10 ratio
#>      90% 
#> 4.468085 
cp_ratio(wages, 0.75, 0.25) # 75/25 ratio
#> 75% 
#>   3