svyrmir {convey} | R Documentation |
Relative median income ratio
Description
Estimate the ratio between the median income of people with age above 65 and the median income of people with age below 65.
Usage
svyrmir(formula, design, ...)
## S3 method for class 'survey.design'
svyrmir(
formula,
design,
age,
agelim = 65,
quantiles = 0.5,
na.rm = FALSE,
med_old = FALSE,
med_young = FALSE,
...
)
## S3 method for class 'svyrep.design'
svyrmir(
formula,
design,
age,
agelim = 65,
quantiles = 0.5,
na.rm = FALSE,
med_old = FALSE,
med_young = FALSE,
...
)
## S3 method for class 'DBIsvydesign'
svyrmir(formula, design, age, ...)
Arguments
formula |
a formula specifying the income variable |
design |
a design object of class |
... |
arguments passed on to 'survey::oldsvyquantile' |
age |
formula defining the variable age |
agelim |
the age cutpoint, the default is 65 |
quantiles |
income quantile, usually .5 (median) |
na.rm |
Should cases with missing values be dropped? |
med_old |
return the median income of people older than agelim |
med_young |
return the median income of people younger than agelim |
Details
you must run the convey_prep
function on your survey design object immediately after creating it with the svydesign
or svrepdesign
function.
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.
Author(s)
Djalma Pessoa and Anthony Damico
References
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 https://ojs.ub.uni-konstanz.de/srm/article/view/369.
Jean-Claude Deville (1999). Variance estimation for complex statistics and estimators: linearization and residual techniques. Survey Methodology, 25, 193-203, URL https://www150.statcan.gc.ca/n1/en/catalogue/12-001-X19990024882.
See Also
Examples
library(survey)
library(laeken)
data(eusilc) ; names( eusilc ) <- tolower( names( eusilc ) )
# missing completely at random, missingness rate = .20
ind_miss <- rbinom(nrow(eusilc), 1, .20 )
eusilc$eqincome_miss <- eusilc$eqincome
is.na(eusilc$eqincome_miss)<- ind_miss==1
# linearized design
des_eusilc <- svydesign( ids = ~rb030 , strata = ~db040 , weights = ~rb050 , data = eusilc )
des_eusilc <- convey_prep(des_eusilc)
svyrmir( ~eqincome , design = des_eusilc , age = ~age, med_old = TRUE )
# replicate-weighted design
des_eusilc_rep <- as.svrepdesign( des_eusilc , type = "bootstrap" )
des_eusilc_rep <- convey_prep(des_eusilc_rep)
svyrmir( ~eqincome , design = des_eusilc_rep, age= ~age, med_old = TRUE )
## Not run:
# linearized design using a variable with missings
svyrmir( ~ eqincome_miss , design = des_eusilc,age= ~age)
svyrmir( ~ eqincome_miss , design = des_eusilc , age= ~age, na.rm = TRUE )
# replicate-weighted design using a variable with missings
svyrmir( ~ eqincome_miss , design = des_eusilc_rep,age= ~age )
svyrmir( ~ eqincome_miss , design = des_eusilc_rep ,age= ~age, 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 )
svyrmir( ~eqincome , design = dbd_eusilc , age = ~age )
dbRemoveTable( conn , 'eusilc' )
dbDisconnect( conn , shutdown = TRUE )
## End(Not run)