svygeidec | R Documentation |
Estimates the group decomposition of the generalized entropy index
svygeidec(formula, subgroup, design, ...) ## S3 method for class 'survey.design' svygeidec(formula, subgroup, design, epsilon = 1, na.rm = FALSE, ...) ## S3 method for class 'svyrep.design' svygeidec(formula, subgroup, design, epsilon = 1, na.rm = FALSE, ...) ## S3 method for class 'DBIsvydesign' svygeidec(formula, subgroup, design, ...)
formula |
a formula specifying the income variable |
subgroup |
a formula specifying the group variable |
design |
a design object of class |
... |
future expansion |
epsilon |
a parameter that determines the sensivity towards inequality in the top of the distribution. Defaults to epsilon = 1. |
na.rm |
Should cases with missing values be dropped? Observations containing missing values in income or group variables will be dropped. |
you must run the convey_prep
function on your survey design object immediately after creating it with the svydesign
or svrepdesign
function.
This measure only allows for strictly positive variables.
Object of class "cvydstat
", which are vectors with a "var
" attribute giving the variance-covariance matrix and a "statistic
" attribute giving the name of the statistic.
Guilherme Jacob, Djalma Pessoa and Anthony Damico
Anthony F. Shorrocks (1984). Inequality decomposition groups population subgroups. Econometrica, v. 52, n. 6, 1984, pp. 1369-1385. URL https://www.jstor.org/stable/1913511.
Martin Biewen and Stephen Jenkins (2002). Estimation of Generalized Entropy and Atkinson Inequality Indices from Complex Survey Data. DIW Discussion Papers, No.345, URL https://www.diw.de/documents/publikationen/73/diw_01.c.40394.de/dp345.pdf.
svygei
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) # linearized design svygeidec( ~eqincome , ~rb090 , subset( des_eusilc, eqincome > 0 ) , epsilon = 0 ) svygeidec( ~eqincome , ~rb090 , subset( des_eusilc, eqincome > 0 ) , epsilon = .5 ) svygeidec( ~eqincome , ~rb090 , subset( des_eusilc, eqincome > 0 ) , epsilon = 1 ) svygeidec( ~eqincome , ~rb090 , subset( des_eusilc, eqincome > 0 ) , epsilon = 2 ) # replicate-weighted design svygeidec( ~eqincome , ~rb090 , subset( des_eusilc_rep, eqincome > 0 ) , epsilon = 0 ) svygeidec( ~eqincome , ~rb090 , subset( des_eusilc_rep, eqincome > 0 ) , epsilon = .5 ) svygeidec( ~eqincome , ~rb090 , subset( des_eusilc_rep, eqincome > 0 ) , epsilon = 1 ) svygeidec( ~eqincome , ~rb090 , subset( des_eusilc_rep, eqincome > 0 ) , epsilon = 2 ) ## Not run: # linearized design using a variable with missings sub_des_eusilc <- subset(des_eusilc, py010n > 0 | is.na(py010n) ) svygeidec( ~py010n , ~rb090 , sub_des_eusilc , epsilon = 0 ) svygeidec( ~py010n , ~rb090 , sub_des_eusilc , epsilon = 0, na.rm = TRUE ) svygeidec( ~py010n , ~rb090 , sub_des_eusilc , epsilon = 1 ) svygeidec( ~py010n , ~rb090 , sub_des_eusilc , epsilon = 1, na.rm = TRUE ) # replicate-weighted design using a variable with missings sub_des_eusilc_rep <- subset(des_eusilc_rep, py010n > 0 | is.na(py010n) ) svygeidec( ~py010n , ~rb090 , sub_des_eusilc_rep , epsilon = 0 ) svygeidec( ~py010n , ~rb090 , sub_des_eusilc_rep , epsilon = 0, na.rm = TRUE ) svygeidec( ~py010n , ~rb090 , sub_des_eusilc_rep , epsilon = 1 ) svygeidec( ~py010n , ~rb090 , sub_des_eusilc_rep , epsilon = 1, na.rm = TRUE ) # 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 ) # database-backed linearized design svygeidec( ~eqincome , ~rb090 , subset(dbd_eusilc, eqincome > 0) , epsilon = 0 ) svygeidec( ~eqincome , ~rb090 , subset(dbd_eusilc, eqincome > 0) , epsilon = .5 ) svygeidec( ~eqincome , ~rb090 , subset(dbd_eusilc, eqincome > 0) , epsilon = 1 ) svygeidec( ~eqincome , ~rb090 , subset(dbd_eusilc, eqincome > 0) , epsilon = 2 ) # database-backed linearized design using a variable with missings sub_dbd_eusilc <- subset(dbd_eusilc, py010n > 0 | is.na(py010n) ) svygeidec( ~py010n , ~rb090 , sub_dbd_eusilc , epsilon = 0 ) svygeidec( ~py010n , ~rb090 , sub_dbd_eusilc , epsilon = 0, na.rm = TRUE ) svygeidec( ~py010n , ~rb090 , sub_dbd_eusilc , epsilon = .5 ) svygeidec( ~py010n , ~rb090 , sub_dbd_eusilc , epsilon = .5, na.rm = TRUE ) svygeidec( ~py010n , ~rb090 , sub_dbd_eusilc , epsilon = 1 ) svygeidec( ~py010n , ~rb090 , sub_dbd_eusilc , epsilon = 1, na.rm = TRUE ) svygeidec( ~py010n , ~rb090 , sub_dbd_eusilc , epsilon = 2 ) svygeidec( ~py010n , ~rb090 , sub_dbd_eusilc , epsilon = 2, na.rm = TRUE ) dbRemoveTable( conn , 'eusilc' ) dbDisconnect( conn , shutdown = TRUE ) ## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.