Learn R Programming

vardpoor (version 0.8.4)

vardcrospoor: Variance estimation for cross-sectional, longitudinal measures for indicators on social exclusion and poverty

Description

Computes the variance estimation for cross-sectional and longitudinal measures for indicators on social exclusion and poverty.

Usage

vardcrospoor(Y, age = NULL, pl085 = NULL, month_at_work = NULL, Y_den = NULL, Y_thres = NULL, wght_thres = NULL, H, PSU, w_final, ID_level1, ID_level2, Dom = NULL, country = NULL, period, sort = NULL, gender = NULL, dataset = NULL, X = NULL, countryX = NULL, periodX = NULL, X_ID_level1 = NULL, ind_gr = NULL, g = NULL, q = NULL, datasetX = NULL, percentage = 60, order_quant = 50, alpha = 20, use.estVar = FALSE, withperiod = TRUE, netchanges = TRUE, confidence = .95, outp_lin = FALSE, outp_res = FALSE, type = "linrmpg")

Arguments

Y
Variables of interest. Object convertible to data.table or variable names as character, column numbers.
age
Age variable. One dimensional object convertible to one-column data.table or variable name as character, column number.
pl085
Retirement variable (Number of months spent in retirement or early retirement). One dimensional object convertible to one-column data.table or variable name as character, column number.
month_at_work
Variable for total number of month at work (sum of the number of months spent at full-time work as employee, number of months spent at part-time work as employee, number of months spent at full-time work as self-employed (including family worker), number of months spent at part-time work as self-employed (including family worker)). One dimensional object convertible to one-column data.table or variable name as character, column number.
Y_den
Denominator variable (for example gross individual earnings). One dimensional object convertible to one-column data.table or variable name as character, column number.
Y_thres
Variable (for example equalized disposable income) used for computation and linearization of poverty threshold. One dimensional object convertible to one-column data.table or variable name as character, column number or logical vector with only one TRUE value (length of the vector has to be the same as the column count of dataset). Variable specified for inc is used as income_thres if income_thres is not defined.
wght_thres
Weight variable used for computation and linearization of poverty threshold. One dimensional object convertible to one-column data.table or variable name as character, column number. Variable specified for weight is used as wght_thres if wght_thres is not defined.
H
The unit stratum variable. One dimensional object convertible to one-column data.table or variable name as character, column number.
PSU
Primary sampling unit variable. One dimensional object convertible to one-column data.table or variable name as character, column number.
w_final
Weight variable. One dimensional object convertible to one-column data.table or variable name as character, column number.
ID_level1
Variable for level1 ID codes. One dimensional object convertible to one-column data.table or variable name as character, column number.
ID_level2
Optional variable for unit ID codes. One dimensional object convertible to one-column data.table or variable name as character, column number.
Dom
Optional variables used to define population domains. If supplied, variables are calculated for each domain. An object convertible to data.table or variable names as character vector, column numbers.
country
Variable for the survey countries. The values for each country are computed independently. Object convertible to data.table or variable names as character, column numbers.
period
Variable for the survey periods. The values for each period are computed independently. Object convertible to data.table or variable names as character, column numbers.
sort
Optional variable to be used as tie-breaker for sorting. One dimensional object convertible to one-column data.table or variable name as character, column number.
gender
Numerical variable for gender, where 1 is for males, but 2 is for females. One dimensional object convertible to one-column data.table or variable name as character, column number.
dataset
Optional survey data object convertible to data.table.
X
Optional matrix of the auxiliary variables for the calibration estimator. Object convertible to data.table or variable names as character, column numbers.
countryX
Optional variable for the survey countries. The values for each country are computed independently. Object convertible to data.table or variable names as character, column numbers.
periodX
Optional variable of the survey periods and countries. If supplied, residual estimation of calibration is done independently for each time period. Object convertible to data.table or variable names as character, column numbers.
X_ID_level1
Variable for level1 ID codes. One dimensional object convertible to one-column data.table or variable name as character, column number.
ind_gr
Optional variable by which divided independently X matrix of the auxiliary variables for the calibration. One dimensional object convertible to one-column data.table or variable name as character, column number.
g
Optional variable of the g weights. One dimensional object convertible to one-column data.table or variable name as character, column number.
q
Variable of the positive values accounting for heteroscedasticity. One dimensional object convertible to one-column data.table or variable name as character, column number.
datasetX
Optional survey data object in household level convertible to data.table.
percentage
A numeric value in range $[0,100]$ for $p$ in the formula for poverty threshold computation: $$\frac{p}{100} \cdot Z_{\frac{\alpha}{100}}.$$ For example, to compute poverty threshold equal to 60% of some income quantile, $p$ should be set equal to 60.
order_quant
A numeric value in range $[0,100]$ for $\alpha$ in the formula for poverty threshold computation: $$\frac{p}{100} \cdot Z_{\frac{\alpha}{100}}.$$ For example, to compute poverty threshold equal to some percentage of median income, $\alpha$ should be set equal to 50.
alpha
a numeric value in range $[0,100]$ for the order of the income quantile share ratio (in percentage).
use.estVar
Logical value. If value is TRUE, then R function estVar is used for the estimation of covariance matrix of the residuals. If value is FALSE, then R function estVar is not used for the estimation of covariance matrix of the residuals.
withperiod
Logical value. If TRUE is value, the results is with period, if FALSE, without period.
netchanges
Logical value. If value is TRUE, then produce two objects: the first object is aggregation of weighted data by period (if available), country, strata and PSU, the second object is an estimation for Y, the variance, gradient for numerator and denominator by country and period (if available). If value is FALSE, then both objects containing NULL.
confidence
Optional positive value for confidence interval. This variable by default is 0.95.
outp_lin
Logical value. If TRUE linearized values of the ratio estimator will be printed out.
outp_res
Logical value. If TRUE estimated residuals of calibration will be printed out.
type
a character vector (of length one unless several.ok is TRUE), example "linarpr","linarpt", "lingpg", "linpoormed", "linrmpg", "lingini", "lingini2", "linqsr", "linarr", "linrmir", "all_choices".

Value

A list with objects are returned by the function:

References

Guillaume Osier, Yves Berger, Tim Goedeme, (2013), Standard error estimation for the EU-SILC indicators of poverty and social exclusion, Eurostat Methodologies and Working papers, URL http://ec.europa.eu/eurostat/documents/3888793/5855973/KS-RA-13-024-EN.PDF.

Yves G. Berger, Tim Goedeme, Guillame Osier (2013). Handbook on standard error estimation and other related sampling issues in EU-SILC, URL https://ec.europa.eu/eurostat/cros/content/handbook-standard-error-estimation-and-other-related-sampling-issues-ver-29072013_en

Eurostat Methodologies and Working papers, Handbook on precision requirements and variance estimation for ESS household surveys, 2013, URL http://ec.europa.eu/eurostat/documents/3859598/5927001/KS-RA-13-029-EN.PDF.

See Also

linrmir, linarr, vardchanges

Examples

Run this code
data(eusilc)
set.seed(1)

data <- data.table(rbind(eusilc, eusilc),
                   year = c(rep(2010, nrow(eusilc)),
                            rep(2011, nrow(eusilc))))
data[age < 0, age := 0]
PSU <- data[, .N, keyby = "db030"][, N := NULL]
PSU[, PSU := trunc(runif(nrow(PSU), 0, 100))]
PSU$inc <- runif(nrow(PSU), 20, 100000)
data <- merge(data, PSU, all = TRUE, by = "db030")
PSU <- eusilc <- NULL
data[, strata := c("XXXX")]
data$pl085 <- 12 * trunc(runif(nrow(data), 0, 2))
data$month_at_work <- 12 * trunc(runif(nrow(data), 0, 2))
data[, id_l2 := .I]

result <- vardcrospoor(Y = "inc", age = "age",
                       pl085 = "pl085", 
                       month_at_work = "month_at_work",
                       Y_den = "inc", Y_thres = "inc",
                       wght_thres = "rb050",
                       H = "strata", PSU = "PSU", 
                       w_final="rb050", ID_level1 = "db030",
                       ID_level2 = "id_l2",
                       Dom = c("rb090", "db040"),
                       country = NULL, period = "year",
                       sort = NULL, gender = NULL,
                       dataset = data,
                       percentage = 60,
                       order_quant = 50,
                       alpha = 20,
                       confidence = 0.95,
                       type = "linrmpg")

## Not run: 
# result2 <- vardcrospoor(Y = "inc", age = "age",
#                         pl085 = "pl085", 
#                         month_at_work = "month_at_work",
#                         Y_den = "inc", Y_thres = "inc",
#                         wght_thres = "rb050",
#                         H = "strata", PSU = "PSU", 
#                         w_final = "rb050", ID_level1 = "db030",
#                         ID_level2 = "id_l2",
#                         Dom = c("rb090", "db040"),
#                         period = "year", sort = NULL,
#                         gender = NULL, dataset = data,
#                         percentage = 60,
#                         order_quant = 50,
#                         alpha = 20,
#                         confidence = 0.95,
#                         type = "linrmpg")## End(Not run)

Run the code above in your browser using DataLab