Estimate Peichl, Schaefer and Scheicher (2010) richness measures.

svyrich(formula, design, ...)

# S3 method for survey.design
svyrich(
  formula,
  design,
  type_measure,
  g,
  type_thresh = "abs",
  abs_thresh = NULL,
  percent = 1.5,
  quantiles = 0.5,
  thresh = FALSE,
  na.rm = FALSE,
  deff = FALSE,
  linearized = FALSE,
  ...
)

# S3 method for svyrep.design
svyrich(
  formula,
  design,
  type_measure,
  g,
  type_thresh = "abs",
  abs_thresh = NULL,
  percent = 1.5,
  quantiles = 0.5,
  thresh = FALSE,
  na.rm = FALSE,
  deff = FALSE,
  linearized = FALSE,
  return.replicates = FALSE,
  ...
)

# S3 method for DBIsvydesign
svyrich(formula, design, ...)

Arguments

formula

a formula specifying the income variable

design

a design object of class survey.design or class svyrep.design from the survey library.

...

passed to svyarpt

type_measure

A string "Cha", "FGTT1" or "FGTT2" defining the richness measure.

g

Richness preference parameter.

type_thresh

type of richness threshold. If "abs" the threshold is fixed and given the value of abs_thresh; if "relq" it is given by percent times the quantile; if "relm" it is percent times the mean.

abs_thresh

richness threshold value if type_thresh is "abs"

percent

the multiple of the quantile or mean used in the richness threshold definition. Defaults to percent = 1.5; i.e., 1.5 times the quantile or mean.

quantiles

the quantile used used in the richness threshold definition. Defaults to quantiles = .5, the median.

thresh

return the richness threshold value

na.rm

Should cases with missing values be dropped?

deff

Return the design effect (see survey::svymean)

linearized

Should a matrix of linearized variables be returned

return.replicates

Return the replicate estimates?

Value

Object of class "cvystat", which are vectors with a "var" attribute giving the variance and a "statistic" attribute giving the name of the statistic.

Details

you must run the convey_prep function on your survey design object immediately after creating it with the svydesign or svrepdesign function.

References

Michal Brzezinski (2014). Statistical Inference for Richness Measures. Applied Economics, Vol. 46, No. 14, pp. 1599-1608, URL http://dx.doi.org/10.1080/00036846.2014.880106.

Andreas Peichl, Thilo Schaefer, and Christoph Scheicher (2010). Measuring richness and poverty: A micro data application to Europe and Germany. Review of Income and Wealth, Vol. 56, No.3, pp. 597-619.

Guillaume Osier (2009). Variance estimation for complex indicators of poverty and inequality. Journal of the European Survey Research Association, Vol.3, No.3, pp. 167-195, ISSN 1864-3361, URL http://ojs.ub.uni-konstanz.de/srm/article/view/369.

See also

Author

Guilherme Jacob, Djalma Pessoa and Anthony Damico

Examples

library(survey)
library(laeken)
data(eusilc) ; names( eusilc ) <- tolower( names( eusilc ) )

# linearized design

des_eusilc <- svydesign( ids = ~rb030 , strata = ~db040 ,  weights = ~rb050 , data = eusilc )
des_eusilc <- convey_prep( des_eusilc )

# replicate-weighted design
des_eusilc_rep <- as.svrepdesign( des_eusilc , type = "bootstrap" )
des_eusilc_rep <- convey_prep( des_eusilc_rep )

# concave FGT-like richness measure
# headcount ratio, richness threshold fixed
svyrich(~eqincome, des_eusilc, type_measure = "FGTT1" , g=0,  abs_thresh=30000)
#>          FGTT1-0-richness measure     SE
#> eqincome                  0.12272 0.0027
# richness gap index, richness threshold fixed
svyrich(~eqincome, des_eusilc, type_measure = "FGTT1" , g=1,  abs_thresh=30000)
#>          FGTT1-1-richness measure    SE
#> eqincome                 0.025235 7e-04
# headcount ratio, richness threshold equal to the median
svyrich(~eqincome, des_eusilc, type_measure = "FGTT1" , g=0, type_thresh= "relq" )
#>          FGTT1-0-richness measure     SE
#> eqincome                  0.17272 0.0031
# richness gap index, richness threshold equal to the median
svyrich(~eqincome, des_eusilc, type_measure = "FGTT1" , g=1, type_thresh= "relq" )
#>          FGTT1-1-richness measure    SE
#> eqincome                 0.036736 9e-04
# headcount ratio, richness threshold equal to the mean
svyrich(~eqincome, des_eusilc, type_measure = "FGTT1" , g=0, type_thresh= "relm" )
#>          FGTT1-0-richness measure     SE
#> eqincome                  0.12459 0.0027
# richness gap index, richness threshold equal to the mean
svyrich(~eqincome, des_eusilc, type_measure = "FGTT1" , g=1, type_thresh= "relm" )
#>          FGTT1-1-richness measure    SE
#> eqincome                 0.025771 5e-04

#  using svrep.design:
# headcount ratio, richness threshold fixed
svyrich(~eqincome, des_eusilc_rep, type_measure = "FGTT1" , g=0, abs_thresh=30000 )
#>          FGTT1-0-richness measure     SE
#> eqincome                  0.12272 0.0022
# richness gap index, richness threshold fixed
svyrich(~eqincome, des_eusilc_rep, type_measure = "FGTT1" , g=1, abs_thresh=30000 )
#>          FGTT1-1-richness measure    SE
#> eqincome                 0.025235 6e-04
# headcount ratio, richness threshold equal to the median
svyrich(~eqincome, des_eusilc_rep, type_measure = "FGTT1" , g=0, type_thresh= "relq" )
#>          FGTT1-0-richness measure    SE
#> eqincome                  0.17272 0.003
# richness gap index, richness threshold equal to the median
svyrich(~eqincome, des_eusilc_rep, type_measure = "FGTT1" , g=1, type_thresh= "relq" )
#>          FGTT1-1-richness measure    SE
#> eqincome                 0.036736 8e-04
# headcount ratio, richness threshold equal to the mean
svyrich(~eqincome, des_eusilc_rep, type_measure = "FGTT1" , g=0, type_thresh= "relm" )
#>          FGTT1-0-richness measure     SE
#> eqincome                  0.12459 0.0017
# richness gap index, richness threshold equal to the mean
svyrich(~eqincome, des_eusilc_rep, type_measure = "FGTT1" , g=1, type_thresh= "relm" )
#>          FGTT1-1-richness measure    SE
#> eqincome                 0.025771 4e-04

if (FALSE) {

# database-backed design
library(RSQLite)
library(DBI)
dbfile <- tempfile()
conn <- dbConnect( RSQLite::SQLite() , dbfile )
dbWriteTable( conn , 'eusilc' , eusilc )

dbd_eusilc <-
  svydesign(
    ids = ~rb030 ,
    strata = ~db040 ,
    weights = ~rb050 ,
    data="eusilc",
    dbname=dbfile,
    dbtype="SQLite"
  )


dbd_eusilc <- convey_prep( dbd_eusilc )

# headcount ratio, richness threshold fixed
svyrich(~eqincome, dbd_eusilc, type_measure = "FGTT1" , g=0, abs_thresh=30000 )
# richness gap index, richness threshold fixed
svyrich(~eqincome, dbd_eusilc, type_measure = "FGTT1" , g=1, abs_thresh=30000 )
# headcount ratio, richness threshold equal to the median
svyrich(~eqincome, dbd_eusilc, type_measure = "FGTT1" , g=0, type_thresh= "relq" )
# richness gap index, richness threshold equal to the median
svyrich(~eqincome, dbd_eusilc, type_measure = "FGTT1" , g=1, type_thresh= "relq" )
# headcount ratio, richness threshold equal to the mean
svyrich(~eqincome, dbd_eusilc, type_measure = "FGTT1" , g=0, type_thresh= "relm" )
# richness gap index, richness threshold equal to the mean
svyrich(~eqincome, dbd_eusilc, type_measure = "FGTT1" , g=1, type_thresh= "relm" )

dbRemoveTable( conn , 'eusilc' )

dbDisconnect( conn , shutdown = TRUE )

}