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, ...)
a formula specifying the income variable
a design object of class survey.design
or class svyrep.design
from the survey
library.
passed to svyarpt
A string "Cha", "FGTT1" or "FGTT2" defining the richness measure.
Richness preference parameter.
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.
richness threshold value if type_thresh is "abs"
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.
the quantile used used in the richness threshold definition. Defaults to quantiles = .5
, the median.
return the richness threshold value
Should cases with missing values be dropped?
Return the design effect (see survey::svymean
)
Should a matrix of linearized variables be returned
Return the replicate estimates?
Object of class "cvystat
", which are vectors with a "var
" attribute giving the variance and a "statistic
" attribute giving the name of the statistic.
you must run the convey_prep
function on your survey design object immediately after creating it with the svydesign
or svrepdesign
function.
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.
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 )
}