Title: | Estimation of Fuzzy Poverty Measures |
---|---|
Description: | Estimates fuzzy measures of poverty and deprivation. It also estimates the sampling variance of these measures using bootstrap or jackknife repeated replications. |
Authors: | Federico Crescenzi [aut, cre] |
Maintainer: | Federico Crescenzi <[email protected]> |
License: | MIT + file LICENSE |
Version: | 3.0.2 |
Built: | 2025-02-22 05:26:36 UTC |
Source: | https://github.com/airdede/fuzzypovertyr |
This function takes as input a numeric vector representing a predicate variable and turns it into its equivalised version using different equivalence scales.
eq_predicate( predicate, ncomp, age = NULL, scale.eq = "modifiedOECD", newscale, data = NULL )
eq_predicate( predicate, ncomp, age = NULL, scale.eq = "modifiedOECD", newscale, data = NULL )
predicate |
A numeric vector (or the variable name) representing the poverty predicate (i.e. income or expenditure) |
ncomp |
A numerical vector (or the variable name) of the total number of components for the j-th family. |
age |
A numerical vector (or the variable name) of the number of components for the j-th family less than 16 years-old to be defined only for OECD scales |
scale.eq |
The equivalence scale. Options are: "carbonaro", "n.par" (non parametric), "OECD7050", "modifiedOECD" (Default) or "new" |
newscale |
a data.frame with two columns: "ncomp" defining the number of components and "s.eq" that define the corresponding |
data |
An optional data frame containing the variables to be used |
A data.frame containing the equivalised predicate variable.
Bernini, C., Emili, S., & Ferrante, M. R. (2024). Regional disparities in the sensitivity of wellbeing to poverty measures. In Spatial Inequalities and Wellbeing (pp. 136-157). Edward Elgar Publishing.
Betti, G. (1999). Nonparametric equivalence scales with application to Poland. Statistics Research Report.
Chanfreau, J., & Burchardt, T. (2008). Equivalence scales: rationales, uses and assumptions. Edinburgh: Scottish Government.
#Using OECD scale eq_predicate(predicate = "HY022", ncomp = "ncomp", age = "age16", scale.eq = "OECD7050", data = eusilc) #OECD7050 eq_predicate(predicate = "HY022", ncomp = "ncomp", age = "age16", scale.eq = "modifiedOECD", data = eusilc) #modifiedOECD #Define a new scale newscal <- data.frame("ncomp" = c(1:7), "s.eq" = runif(7,1,10) ) # new eq_predicate(predicate = "HY022", ncomp = "ncomp", scale.eq = "new", newscale = newscal, data = eusilc)
#Using OECD scale eq_predicate(predicate = "HY022", ncomp = "ncomp", age = "age16", scale.eq = "OECD7050", data = eusilc) #OECD7050 eq_predicate(predicate = "HY022", ncomp = "ncomp", age = "age16", scale.eq = "modifiedOECD", data = eusilc) #modifiedOECD #Define a new scale newscal <- data.frame("ncomp" = c(1:7), "s.eq" = runif(7,1,10) ) # new eq_predicate(predicate = "HY022", ncomp = "ncomp", scale.eq = "new", newscale = newscal, data = eusilc)
Eusilc data
data(eusilc)
data(eusilc)
An object of class "data.frame"
Country of residence
ID
Total disposable household income before social transfer
Capacity to afford paying for one week annual holiday
Capacity to afford a meal with meat
Capacity to face unexpected financial expanses
Ownership of a telephone
Ownership of a color TV
Ownership of a computer
Ownership of a washing machine
Ownership of a car
Ability to make ends meet
Problems with the dwelling: too dark, not enough light
Noise from neighbors or from the street
Pollution, crime or other environmental problems
Crime violence or vandalism in the area
Dwelling type
Tenure Status
Leaking roof, damp walls,floors,foundation
Ability to keep home adequately warm
Bath or shower in dwelling
Indoor flushing toilet for sole use of household
Household size
Household cross-sectional weight
Sub-domain
Stratum
Primary selection unit
Size of the household
Number of household members aged less than 16 year
Equivalised income
Created by authors following the EU-SILC structure
fm_construct
constructs fuzzy monetary poverty estimates.
fm_construct( predicate, weight = NULL, fm = "verma", ID = NULL, HCR, interval = c(1, 10), alpha = NULL, hh.size, z_min, z_max, z1, z2, b, z, breakdown = NULL, data = NULL, verbose = FALSE )
fm_construct( predicate, weight = NULL, fm = "verma", ID = NULL, HCR, interval = c(1, 10), alpha = NULL, hh.size, z_min, z_max, z1, z2, b, z, breakdown = NULL, data = NULL, verbose = FALSE )
predicate |
A numeric vector representing the poverty predicate (i.e. income or expenditure) |
weight |
A numeric vector of sampling weights of the same length of predicate. if NULL weights will set equal to n (n = sample size) |
fm |
The membership function (default is "verma". Other options are "ZBM", "belhadj2015", "belhadj2011", "chakravarty", "cerioli", "verma1999" and "TFR". See Betti et. al., 2023) |
ID |
A numeric or character vector of IDs. if NULL (the default) it is set as the row sequence |
HCR |
If fm="verma" or fm="verma1999" or fm="TFR" . The value of the head count ratio used to compute alpha so that the membership function equals the HCR |
interval |
If fm="verma" or fm="verma1999" or fm="TFR". A numeric vector of length two to look for the value of alpha (if not supplied) |
alpha |
The value of the exponent in equations of "verma", "verma1999" and "TFR". If NULL it is calculated so that it equates the expectation of the membership function to HCR. |
hh.size |
If fm="ZBM". A numeric vector of household size |
z_min |
A parameter of the membership function if fm="belhadj2011", i.e. the z_min: $mu=1 for 0 <y_i<z_min$ (see: See Betti et al., 2023) |
z_max |
A parameter of the membership function if fm="belhadj2011", i.e. the z_max: $mu=0 for y_i>z_max$ (see: See Betti et al., 2023) |
z1 |
A parameter of the membership function if fm="belhadj2015" or fm="cerioli". For "belhadj2015" z1: $mu=1 for y_i<z1$ while for "cerioli" $mu=1 for 0 <y_i<z1$ (see: See Betti et al., 2023) |
z2 |
A parameter of the membership function if fm="belhadj2015" or fm="cerioli". For "belhadj2015" z2: $mu=0 for y_i>z2$ while for "cerioli" the z1: $mu=0 for y_i>z2$ (see: See Betti et al., 2023) |
b |
A parameter of the membership function if fm="belhadj2015". The shape parameter (if b=1 the mf is linear between z1 and z2) |
z |
A parameter of the membership function if fm="chakravarty", i.e. $mu=0 for y_i>=z$ (see: See Betti et al., 2023) |
breakdown |
A factor of sub-domains to calculate estimates for (using the same alpha) |
data |
An optional data frame containing the variables to be used |
verbose |
Logical. whether to print the proceeding of the procedure |
It implements the fuzzy set approach to monetary poverty measurement where the usual dichotomy poor (1) not-poor(0) is replaced with a continuum score in $(0,1)$
an object of class FuzzyMonetary containing the (fuzzy) membership function for each individual in the sample,
the estimated expected value (estimate
) of the function and the parameters of the
membership functions (supplied or calculated). If breakdown is supplied it gives an output for each level.
Belhadj, B. (2011). A new fuzzy unidimensional poverty index from an information theory perspective. Empirical Economics, 40(1):687–704.
Belhadj, B. (2015). Employment measure in developing countries via minimum wage and poverty new fuzzy approach. Opsearch, 52(1):329–339.
Betti, G., Cheli, B., Lemmi, A., and Verma, V. (2006). Multidimensional and longitudinal poverty: an integrated fuzzy approach. In Betti, G. and Lemmi, A., editors, Fuzzy set approach to multidimensional poverty measurement, pages 115–137. Springer, Boston, USA.
Betti, G., D’Agostino, A., Lemmi, A., & Neri, L. (2023). The fuzzy approach to poverty measurement. In Research Handbook on Measuring Poverty and Deprivation Edited by Silber, J. (pp. 489-500). Edward Elgar Publishing.
Betti, G. and Verma, V. (1999). Measuring the degree of poverty in a dynamic and comparative context: a multi-dimensional approach using fuzzy set theory. In Proceedings, iccs-vi, volume 11, pages 289–300.
Cerioli, A. and Zani, S. (1990). A fuzzy approach to the measurement of poverty. In Income and Wealth Distribution, Inequality and Poverty: Proceedings of the Second International Conference on Income Distribution by Size: Generation, Distribution, Measurement and Applications., 272–284. Springer, Boston, USA.
Chakravarty, S. R. (2006). An Axiomatic Approach to Multidimensional Poverty Measurement via Fuzzy Sets. Fuzzy Set Approach to Multidimensional Poverty Measurement, 49-72.
Cheli, B. and Lemmi, A. (1995). A ’totally’ fuzzy and relative approach to the multidimensional analysis of poverty. 24(1):115–134.
Zedini, A. and Belhadj, B. (2015). A new approach to unidimensional poverty analysis: Application to the Tunisian case. Review of Income and Wealth, 61(3):465–476.
#The following examples are based on the dataset eusilc #included in the package. #fm = "verma" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma", HCR = 0.154, ID = eusilc$ID) #fm = "verma1999" #In this example we set alpha=4.5 fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma1999", alpha = 4.5, ID = eusilc$ID) #fm = "TFR" #In this example we do not use the sample weights. alpha = 4.5 fm_construct(predicate = eusilc$eq_income, fm = "TFR", alpha = 4.5) #fm = "belhadj2015" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z1=100, z2=15000, b=2, fm = "belhadj2015") #fm = "cerioli" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z1=100, z2=10000, fm= "cerioli") #fm = "belhadj2011" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z_min=1000, z_max=8000, fm= "belhadj2011") #fm = "chakravarty" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z=8000, fm= "chakravarty") #fm = "ZBM" #For this index have to use the household size fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, hh.size=eusilc$ncomp , fm= "ZBM") ####################### ##Including breakdown## ####################### #fm = "verma" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma", HCR = 0.154, ID = eusilc$ID, breakdown = eusilc$db040) #fm = "verma1999" #In this example we set alpha=4.5 fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma1999", alpha = 4.5, ID = eusilc$ID, breakdown = eusilc$db040) #fm = "TFR" #In this example we do not use the sample weights. alpha = 4.5 fm_construct(predicate = eusilc$eq_income, fm = "TFR", alpha = 4.5, breakdown = eusilc$db040) #fm = "belhadj2015" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z1=100, z2=15000, b=2, fm = "belhadj2015", breakdown = eusilc$db040) #fm = "cerioli" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z1=100, z2=10000, fm= "cerioli", breakdown = eusilc$db040) #fm = "belhadj2011" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z_min=1000, z_max=8000, fm= "belhadj2011", breakdown = eusilc$db040) #fm = "chakravarty" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z=8000, fm= "chakravarty", breakdown = eusilc$db040) #fm = "ZBM" #For this index we have to use the household size fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, hh.size=eusilc$ncomp , fm= "ZBM", breakdown = eusilc$db040)
#The following examples are based on the dataset eusilc #included in the package. #fm = "verma" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma", HCR = 0.154, ID = eusilc$ID) #fm = "verma1999" #In this example we set alpha=4.5 fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma1999", alpha = 4.5, ID = eusilc$ID) #fm = "TFR" #In this example we do not use the sample weights. alpha = 4.5 fm_construct(predicate = eusilc$eq_income, fm = "TFR", alpha = 4.5) #fm = "belhadj2015" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z1=100, z2=15000, b=2, fm = "belhadj2015") #fm = "cerioli" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z1=100, z2=10000, fm= "cerioli") #fm = "belhadj2011" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z_min=1000, z_max=8000, fm= "belhadj2011") #fm = "chakravarty" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z=8000, fm= "chakravarty") #fm = "ZBM" #For this index have to use the household size fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, hh.size=eusilc$ncomp , fm= "ZBM") ####################### ##Including breakdown## ####################### #fm = "verma" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma", HCR = 0.154, ID = eusilc$ID, breakdown = eusilc$db040) #fm = "verma1999" #In this example we set alpha=4.5 fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma1999", alpha = 4.5, ID = eusilc$ID, breakdown = eusilc$db040) #fm = "TFR" #In this example we do not use the sample weights. alpha = 4.5 fm_construct(predicate = eusilc$eq_income, fm = "TFR", alpha = 4.5, breakdown = eusilc$db040) #fm = "belhadj2015" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z1=100, z2=15000, b=2, fm = "belhadj2015", breakdown = eusilc$db040) #fm = "cerioli" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z1=100, z2=10000, fm= "cerioli", breakdown = eusilc$db040) #fm = "belhadj2011" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z_min=1000, z_max=8000, fm= "belhadj2011", breakdown = eusilc$db040) #fm = "chakravarty" fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, z=8000, fm= "chakravarty", breakdown = eusilc$db040) #fm = "ZBM" #For this index we have to use the household size fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, hh.size=eusilc$ncomp , fm= "ZBM", breakdown = eusilc$db040)
This function estimates the variance of the fuzzy monetary poverty index
fm_var( predicate, weight, fm, ID = NULL, type = "bootstrap_naive", R = 100, M = NULL, stratum, psu, f = 0.01, verbose = FALSE, HCR, interval = c(1, 10), alpha = NULL, hh.size, z_min, z_max, z1, z2, b, z, Xs, total, breakdown = NULL, fixed = FALSE, data = NULL )
fm_var( predicate, weight, fm, ID = NULL, type = "bootstrap_naive", R = 100, M = NULL, stratum, psu, f = 0.01, verbose = FALSE, HCR, interval = c(1, 10), alpha = NULL, hh.size, z_min, z_max, z1, z2, b, z, Xs, total, breakdown = NULL, fixed = FALSE, data = NULL )
predicate |
A numeric vector representing the poverty predicate (i.e. income or expenditure) |
weight |
A numeric vector of sampling weights of the same length of predicate. if NULL weights will set equal to n (n = sample size) |
fm |
The membership function (default is "verma". Other options are "ZBM", "belhadj2015", "belhadj2011", "chakravarty", "cerioli", "verma1999" and "TFR". See Betti et. al., 2023) |
ID |
A numeric or character vector of IDs. if NULL (the default) it is set as the row sequence |
type |
The variance estimation method chosen. One between |
R |
The number of bootstrap replicates. Default is 500 |
M |
The size of bootstrap samples. Default is |
stratum |
The vector identifying the stratum (if 'jackknife' is chosen as variance estimation technique) |
psu |
The vector identifying the psu (if 'jackknife' is chosen as variance estimation technique) |
f |
The finite population correction fraction (if 'jackknife' is chosen as variance estimation technique) |
verbose |
Logical. whether to print the proceeding of the variance estimation procedure |
HCR |
If fm="verma" or fm="verma1999" or fm="TFR" . The value of the head count ratio used to compute alpha so that the membership function equals the HCR |
interval |
If fm="verma" or fm="verma1999" or fm="TFR". A numeric vector of length two to look for the value of alpha (if not supplied) |
alpha |
The value of the exponent in equations of "verma", "verma1999" and "TFR". If NULL it is calculated so that it equates the expectation of the membership function to HCR. |
hh.size |
If fm="ZBM". A numeric vector of household size |
z_min |
A parameter of the membership function if fm="belhadj2011", i.e. the z_min: $mu=1 for 0 <y_i<z_min$ (see: See Betti et. al, 2023) |
z_max |
A parameter of the membership function if fm="belhadj2011", i.e. the z_max: $mu=0 for y_i>z_max$ (see: See Betti et. al, 2023) |
z1 |
A parameter of the membership function if fm="belhadj2015" or fm="cerioli". For "belhadj2015" z1: $mu=1 for y_i<z1$ while for "cerioli" $mu=1 for 0 <y_i<z1$ (see: See Betti et. al, 2023) |
z2 |
A parameter of the membership function if fm="belhadj2015" or fm="cerioli". For "belhadj2015" z2: $mu=0 for y_i>z2$ while for "cerioli" the z1: $mu=0 for y_i>z2$ (see: See Betti et. al, 2023) |
b |
A parameter of the membership function if fm="belhadj2015". The shape parameter (if b=1 the mf is linear between z1 and z2) |
z |
A parameter of the membership function if fm="chakravarty", i.e. $mu=0 for y_i>=z$ (see: See Betti et. al, 2023) |
Xs |
A matrix (i x j) of calibration variables. i number of units, j number of variables |
total |
A Vector of population totals of dimension 1 x j |
breakdown |
A factor of sub-domains to calculate estimates for (using the same alpha). If numeric will be coerced to a factor |
fixed |
Whether the membership function needs to be re-calculated at each bootstrap or jackknife replicate (default is FALSE) |
data |
An optional data frame containing the variables to be used |
An object of class FuzzyMonetary containing the estimate of variance with the method selected. if breakdown is not NULL, the variance is estimated for each sub-domain.
Belhadj, B. (2011). A new fuzzy unidimensional poverty index from an information theory perspective. Empirical Economics, 40(1):687–704.
Belhadj, B. (2015). Employment measure in developing countries via minimum wage and poverty new fuzzy approach. Opsearch, 52(1):329–339.
Betti, G., Cheli, B., Lemmi, A., and Verma, V. (2006). Multidimensional and longitudinal poverty: an integrated fuzzy approach. In Betti, G. and Lemmi, A., editors, Fuzzy set approach to multidimensional poverty measurement, pages 115–137. Springer, Boston, USA.
Betti, G., D’Agostino, A., Lemmi, A., & Neri, L. (2023). The fuzzy approach to poverty measurement. In Research Handbook on Measuring Poverty and Deprivation Edited by Silber, J. (pp. 489-500). Edward Elgar Publishing.
Betti, G. and Verma, V. (1999). Measuring the degree of poverty in a dynamic and comparative context: a multi-dimensional approach using fuzzy set theory. In Proceedings, iccs-vi, volume 11, pages 289–300.
Cerioli, A. and Zani, S. (1990). A fuzzy approach to the measurement of poverty. In Income and Wealth Distribution, Inequality and Poverty: Proceedings of the Second International Conference on Income Distribution by Size: Generation, Distribution, Measurement and Applications., 272–284. Springer, Boston, USA.
Chakravarty, S. R. (2006). An Axiomatic Approach to Multidimensional Poverty Measurement via Fuzzy Sets. Fuzzy Set Approach to Multidimensional Poverty Measurement, 49-72.
Cheli, B. and Lemmi, A. (1995). A ’totally’ fuzzy and relative approach to the multidimensional analysis of poverty. 24(1):115–134.
Zedini, A. and Belhadj, B. (2015). A new approach to unidimensional poverty analysis: Application to the Tunisian case. Review of Income and Wealth, 61(3):465–476.
Betti, G., Gagliardi, F., & Verma, V. (2018). Simplified Jackknife variance estimates for fuzzy measures of multidimensional poverty. International Statistical Review, 86(1), 68-86.
#The following examples are based on the dataset eusilc #included in the package. #Example 1 using bootstrap and breakdown #fm = "verma" fm_var(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma", breakdown = NULL, type = "bootstrap_calibrated", alpha = 4, Xs = eusilc[,4:6], total = c(20, 30, 40)) #fm = "belhadj2015" fm_var(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "belhadj2015", breakdown = eusilc$db040, type = "bootstrap_naive", z1 = 100, z2 = 15000, b = 2) #Example 2 using jackknife without breakdown #fm = "verma1999" fm_var(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma1999", type = "jackknife", stratum = eusilc$stratum , psu = eusilc$psu, alpha = 4) #fm = "cerioli" fm_var(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "cerioli", type = "jackknife", stratum = eusilc$stratum , psu = eusilc$psu, z1 = 1000, z2 = 12000)
#The following examples are based on the dataset eusilc #included in the package. #Example 1 using bootstrap and breakdown #fm = "verma" fm_var(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma", breakdown = NULL, type = "bootstrap_calibrated", alpha = 4, Xs = eusilc[,4:6], total = c(20, 30, 40)) #fm = "belhadj2015" fm_var(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "belhadj2015", breakdown = eusilc$db040, type = "bootstrap_naive", z1 = 100, z2 = 15000, b = 2) #Example 2 using jackknife without breakdown #fm = "verma1999" fm_var(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma1999", type = "jackknife", stratum = eusilc$stratum , psu = eusilc$psu, alpha = 4) #fm = "cerioli" fm_var(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "cerioli", type = "jackknife", stratum = eusilc$stratum , psu = eusilc$psu, z1 = 1000, z2 = 12000)
Step 7. Constructs the fuzzy supplementary poverty measure based on Steps1-6.
fs_construct(steps4_5, weight, alpha, breakdown = NULL)
fs_construct(steps4_5, weight, alpha, breakdown = NULL)
steps4_5 |
The results from |
weight |
A numeric vector of sampling weights of length nrow(step1). if NULL weights will set equal to n (n = sample size) |
alpha |
The value of the exponent in the FM equation. If NULL it is calculated so that it equates the expectation of the membership function to HCR. |
breakdown |
A Dimension of sub-domains to calculate estimates for (using the same alpha). If numeric will be coerced to a Dimension. |
An object of class FuzzySupplementary containing the fuzzy membership function for each unit, the point estimate (i.e. the expected value of the function), and the alpha parameter.
Betti, G., Gagliardi, F., Lemmi, A., & Verma, V. (2015). Comparative measures of multidimensional deprivation in the European Union. Empirical Economics, 49(3), 1071-1100.
Betti, G., Gagliardi, F., & Verma, V. (2018). Simplified Jackknife variance estimates for fuzzy measures of multidimensional poverty. International Statistical Review, 86(1), 68-86.
#This example is based on the dataset eusilc included in the package #The FS index is compute without and with breakdown and using an HCR = 0.12 #The step 2-5 are the following (step 1 is the eusilc dataset) #For more on each step see the ad hoc function included in the package #Step 2 step2 = fs_transform(eusilc[,4:23], weight = eusilc$DB090, ID = eusilc$ID) #Step 3 is the definition of the dimension. #For more about the step see Betti et al. (2018) dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5) #Step 4-5 finding weights steps4_5 = fs_weight(dimensions, step2 = step2, rho = NULL) #Step 6 computation of alpha parameter alpha <- fs_equate(steps4_5 = steps4_5, weight = eusilc$DB090, HCR = 0.12, interval = c(1,10)) #Step 7 the FS index without breakdown fs_results = fs_construct(steps4_5 = steps4_5, weight = eusilc$DB090, alpha = alpha, breakdown = NULL) #Step 7 the FS index with breakdown fs_results = fs_construct(steps4_5 = steps4_5, weight = eusilc$DB090, alpha = alpha, breakdown = eusilc$db040)
#This example is based on the dataset eusilc included in the package #The FS index is compute without and with breakdown and using an HCR = 0.12 #The step 2-5 are the following (step 1 is the eusilc dataset) #For more on each step see the ad hoc function included in the package #Step 2 step2 = fs_transform(eusilc[,4:23], weight = eusilc$DB090, ID = eusilc$ID) #Step 3 is the definition of the dimension. #For more about the step see Betti et al. (2018) dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5) #Step 4-5 finding weights steps4_5 = fs_weight(dimensions, step2 = step2, rho = NULL) #Step 6 computation of alpha parameter alpha <- fs_equate(steps4_5 = steps4_5, weight = eusilc$DB090, HCR = 0.12, interval = c(1,10)) #Step 7 the FS index without breakdown fs_results = fs_construct(steps4_5 = steps4_5, weight = eusilc$DB090, alpha = alpha, breakdown = NULL) #Step 7 the FS index with breakdown fs_results = fs_construct(steps4_5 = steps4_5, weight = eusilc$DB090, alpha = alpha, breakdown = eusilc$db040)
Step 1-7. Constructs the fuzzy supplementary poverty measure based without step-by-step functions.
fs_construct_all( data, weight = NULL, ID = NULL, dimensions, rho = NULL, HCR, interval = c(1, 10), alpha = NULL, breakdown = NULL )
fs_construct_all( data, weight = NULL, ID = NULL, dimensions, rho = NULL, HCR, interval = c(1, 10), alpha = NULL, breakdown = NULL )
data |
A matrix or a data frame of identified items (see Step 1 of Betti et. al, 2018) |
weight |
A numeric vector of sampling weights. if NULL weights will set equal to n (n = sample size) |
ID |
A numeric or character vector of IDs. if NULL (the default) it is set as the row sequence |
dimensions |
A numeric vector (of length |
rho |
Optional critical value to be used for calculation of weights in the Kendall correlation matrix. If NULL rho is set equal to the point of largest gap between the ordered set of correlation values encountered (see Betti and Verma, 2008) |
HCR |
The value of the head count ratio used to compute alpha so that the expected value of the membership function equals HCR |
interval |
A numeric vector of length two to look for the value of alpha (if not supplied) |
alpha |
The value of the exponent in equations of "verma", "verma1999" and "TFR". If NULL it is calculated so that it equates the expectation of the membership function to HCR. |
breakdown |
A Dimension of sub-domains to calculate estimates for (using the same alpha). If numeric will be coerced to a Dimension |
An object of class FuzzySupplementary containing the fuzzy membership function for each unit, the point estimate (i.e. the expected value of the function), and the alpha parameter.
Betti, G., & Verma, V. (2008). Fuzzy measures of the incidence of relative poverty and deprivation: a multi-dimensional perspective. Statistical Methods and Applications, 17, 225-250.
Betti, G., Gagliardi, F., Lemmi, A., & Verma, V. (2015). Comparative measures of multidimensional deprivation in the European Union. Empirical Economics, 49(3), 1071-1100.
Betti, G., Gagliardi, F., & Verma, V. (2018). Simplified Jackknife variance estimates for fuzzy measures of multidimensional poverty. International Statistical Review, 86(1), 68-86.
#This example is based on the dataset eusilc included in the package #The FS index is compute with breakdown and using an HCR = 0.12 #with summary and plot FS <- fs_construct_all(data = eusilc[,4:23], weight = eusilc$DB090, # step 2 dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5), # step 3 rho = NULL, # steps 4 and 5 HCR = .12, # step 6 breakdown = eusilc$db040) # step 7 with breakdowns summary(FS) plot(FS)
#This example is based on the dataset eusilc included in the package #The FS index is compute with breakdown and using an HCR = 0.12 #with summary and plot FS <- fs_construct_all(data = eusilc[,4:23], weight = eusilc$DB090, # step 2 dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5), # step 3 rho = NULL, # steps 4 and 5 HCR = .12, # step 6 breakdown = eusilc$db040) # step 7 with breakdowns summary(FS) plot(FS)
Step 6. This function solves $E(mu)^(alpha-1) = HCR$ for alpha.
fs_equate(steps4_5, weight, HCR, interval = c(1, 10), verbose = TRUE)
fs_equate(steps4_5, weight, HCR, interval = c(1, 10), verbose = TRUE)
steps4_5 |
The results obtained from |
weight |
A numeric vector of sampling weights. if NULL weights will set equal to n (n = sample size) |
HCR |
The value of the head count ratio used to compute alpha so that the membership function equals the HCR |
interval |
The range to look for the value of alpha. |
verbose |
Logical. whether to print the proceeding of the procedure. |
The alpha parameter that solves the non-linear equation $E(mu) = HCR$
Betti, G., Gagliardi, F., Lemmi, A., & Verma, V. (2015). Comparative measures of multidimensional deprivation in the European Union. Empirical Economics, 49(3), 1071-1100.
Betti, G., Gagliardi, F., & Verma, V. (2018). Simplified Jackknife variance estimates for fuzzy measures of multidimensional poverty. International Statistical Review, 86(1), 68-86.
#This example is based on the dataset eusilc included in the package #The Step 6 of the FS index is computed #The step 2-5 are the following (step 1 is the eusilc dataset) #For more on each step see the ad hoc function included in the package #Step 2 step2 = fs_transform(eusilc[,4:23], weight = eusilc$DB090, ID = eusilc$ID) #Step 3 is the definition of the dimension. #For more about the step see Betti et al. (2018) dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5) #Step 4-5 finding weights steps4_5 = fs_weight(dimensions, step2 = step2, rho = NULL) #Step 6 computation of alpha parameter fs_equate(steps4_5 = steps4_5, weight = eusilc$DB090, HCR = 0.12, interval = c(1,10))
#This example is based on the dataset eusilc included in the package #The Step 6 of the FS index is computed #The step 2-5 are the following (step 1 is the eusilc dataset) #For more on each step see the ad hoc function included in the package #Step 2 step2 = fs_transform(eusilc[,4:23], weight = eusilc$DB090, ID = eusilc$ID) #Step 3 is the definition of the dimension. #For more about the step see Betti et al. (2018) dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5) #Step 4-5 finding weights steps4_5 = fs_weight(dimensions, step2 = step2, rho = NULL) #Step 6 computation of alpha parameter fs_equate(steps4_5 = steps4_5, weight = eusilc$DB090, HCR = 0.12, interval = c(1,10))
Detects and inverts deprivation items for FS
fs_order(data, vec_order)
fs_order(data, vec_order)
data |
a data-set of n columns with the considered items |
vec_order |
a vector of length n with TRUE or FALSE. True if the order of the variable is to be inverted, False otherwise |
A data.frame with the same item of data with inverted order for those with vec_order==TRUE
Betti, G., Gagliardi, F., Lemmi, A., & Verma, V. (2015). Comparative measures of multidimensional deprivation in the European Union. Empirical Economics, 49(3), 1071-1100.
Betti, G., Gagliardi, F., & Verma, V. (2018). Simplified Jackknife variance estimates for fuzzy measures of multidimensional poverty. International Statistical Review, 86(1), 68-86.
#Create data data=data.frame("X"=rep(c(1,2,3,4),20), "Y"=rep(c(7,8,9,1),20)) #Crete vec_order vec_order=c(TRUE,FALSE) fs_order(data=data, vec_order)
#Create data data=data.frame("X"=rep(c(1,2,3,4),20), "Y"=rep(c(7,8,9,1),20)) #Crete vec_order vec_order=c(TRUE,FALSE) fs_order(data=data, vec_order)
Step 2. This function maps a set of answers to binary or categorical items to the (0,1) interval.
fs_transform(data, weight = NULL, ID = NULL, depr.score = "s", ...)
fs_transform(data, weight = NULL, ID = NULL, depr.score = "s", ...)
data |
A matrix or a data frame of identified items (see Step 1 of Betti et. al, 2018) |
weight |
A numeric vector of sampling weights of length nrow(step1). if NULL weights will set equal to n (n = sample size) |
ID |
A numeric or character vector of IDs. if NULL (the default) it is set as the row sequence |
depr.score |
The deprivation score to be used (see d or s in Betti et al (2018)) |
... |
other parameters |
The function calculates deprivation score. To obtain consistent measures of supplementary poverty it is important that items are in the right order. Lower levels of the items have to correspond to more deprivation while higher levels of the items to a less deprivation.
An object of class FuzzySupplementary containing a matrix of the same dimension of data
with items mapped into the (0,1) interval
Betti, G., Gagliardi, F., Lemmi, A., & Verma, V. (2015). Comparative measures of multidimensional deprivation in the European Union. Empirical Economics, 49(3), 1071-1100.
Betti, G., Gagliardi, F., & Verma, V. (2018). Simplified Jackknife variance estimates for fuzzy measures of multidimensional poverty. International Statistical Review, 86(1), 68-86.
#This example is based on the dataset eusilc included in the package #step 1 is the choice of the eusilc dataset #Step 2 step2 = fs_transform(eusilc[,4:23], weight = eusilc$DB090, ID = eusilc$ID)
#This example is based on the dataset eusilc included in the package #step 1 is the choice of the eusilc dataset #Step 2 step2 = fs_transform(eusilc[,4:23], weight = eusilc$DB090, ID = eusilc$ID)
Fuzzy supplementary poverty estimation.
fs_var( data, weight = NULL, ID = NULL, dimensions, HCR, breakdown = NULL, alpha, rho = NULL, type = "bootstrap_naive", R = 500, M = NULL, stratum, psu, f = 0.01, Xs, total, fixed = FALSE, verbose = TRUE )
fs_var( data, weight = NULL, ID = NULL, dimensions, HCR, breakdown = NULL, alpha, rho = NULL, type = "bootstrap_naive", R = 500, M = NULL, stratum, psu, f = 0.01, Xs, total, fixed = FALSE, verbose = TRUE )
data |
A matrix or data frame of items |
weight |
A numeric vector of sampling weights of length nrow(step1). if NULL weights will set equal to n (n = sample size) |
ID |
A numeric or character vector of IDs. if NULL (the default) it is set as the row sequence |
dimensions |
A numeric vector (of length |
HCR |
The value of the head count ratio used to compute alpha so that the expected value of the membership function equals HCR |
breakdown |
A factor of sub-domains to calculate estimates for (using the same alpha). If numeric will be coerced to a factor |
alpha |
The value of the exponent in equations of "verma", "verma1999" and "TFR". If NULL it is calculated so that it equates the expectation of the membership function to HCR. |
rho |
Optional critical value to be used for calculation of weights in the Kendall correlation matrix. If NULL rho is set equal to the point of largest gap between the ordered set of correlation values encountered (see Betti and Verma, 2008) |
type |
The variance estimation method chosen. One between |
R |
The number of bootstrap replicates. Default is 500 |
M |
The size of bootstrap samples. Default is |
stratum |
The vector identifying the stratum (if 'jackknife' is chosen as variance estimation technique) |
psu |
The vector identifying the psu (if 'jackknife' is chosen as variance estimation technique) |
f |
The finite population correction fraction (if 'jackknife' is chosen as variance estimation technique |
Xs |
A matrix (i x j) of calibration variables. i number of units, j number of variables |
total |
A Vector of population totals of dimension 1 x j |
fixed |
Whether the membership function needs to be re-calculated at each bootstrap or jackknife replicate (default is FALSE) |
verbose |
Logical. whether to print the proceeding of the variance estimation procedure |
An object of class FuzzySupplementary containing the estimated variance.
Betti, G., & Verma, V. (2008). Fuzzy measures of the incidence of relative poverty and deprivation: a multi-dimensional perspective. Statistical Methods and Applications, 17, 225-250.
Betti, G., Gagliardi, F., Lemmi, A., & Verma, V. (2015). Comparative measures of multidimensional deprivation in the European Union. Empirical Economics, 49(3), 1071-1100.
Betti, G., Gagliardi, F., & Verma, V. (2018). Simplified Jackknife variance estimates for fuzzy measures of multidimensional poverty. International Statistical Review, 86(1), 68-86.
#This example is based on the dataset eusilc included in the package #The variance of the FS index is compute without breakdown #and using an alpha = 2 ############# ##Bootstrap## ############# fs_var(data = eusilc[,4:23], weight = eusilc$DB090, ID = NULL, dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5), breakdown = NULL, alpha = 2, rho = NULL, type = 'bootstrap_naive', M = NULL, R = 2, verbose = TRUE)
#This example is based on the dataset eusilc included in the package #The variance of the FS index is compute without breakdown #and using an alpha = 2 ############# ##Bootstrap## ############# fs_var(data = eusilc[,4:23], weight = eusilc$DB090, ID = NULL, dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5), breakdown = NULL, alpha = 2, rho = NULL, type = 'bootstrap_naive', M = NULL, R = 2, verbose = TRUE)
Step 4 and Step 5. Calculates the weights of dimensions discovered after Dimension analysis.
fs_weight(dimensions, step2, rho = NULL)
fs_weight(dimensions, step2, rho = NULL)
dimensions |
A numeric vector (of length |
step2 |
The data frame resulting from step2 |
rho |
Optional critical value to be used for calculation of weights in the Kendall correlation matrix. If NULL rho is set equal to the point of largest gap between the ordered set of correlation values encountered (see Betti and Verma, 2008) |
This function calculates the two set of weights w_a and w_b (see References)
An object of class FuzzySupplementary with calculated weights and deprivation scores in each dimension identified.
Betti, G., & Verma, V. (2008). Fuzzy measures of the incidence of relative poverty and deprivation: a multi-dimensional perspective. Statistical Methods and Applications, 17, 225-250.
Betti, G., Gagliardi, F., & Verma, V. (2018). Simplified Jackknife variance estimates for fuzzy measures of multidimensional poverty. International Statistical Review, 86(1), 68-86.
#This example is based on the dataset eusilc included in the package #The step 2-3 are the following (step 1 is the eusilc dataset) #For more on each step see the ad hoc function included in the package #Step 2 step2 = fs_transform(eusilc[,4:23], weight = eusilc$DB090, ID = eusilc$ID) #Step 3 is the definition of the dimension. #For more about the step see Betti et al. (2018) dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5) #Step 4-5 finding weights steps4_5 = fs_weight(dimensions, step2 = step2, rho = NULL)
#This example is based on the dataset eusilc included in the package #The step 2-3 are the following (step 1 is the eusilc dataset) #For more on each step see the ad hoc function included in the package #Step 2 step2 = fs_transform(eusilc[,4:23], weight = eusilc$DB090, ID = eusilc$ID) #Step 3 is the definition of the dimension. #For more about the step see Betti et al. (2018) dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5) #Step 4-5 finding weights steps4_5 = fs_weight(dimensions, step2 = step2, rho = NULL)
s3 class fuzzy poverty
FuzzyPoverty(x)
FuzzyPoverty(x)
x |
an object |
an object of class FuzzyPoverty
s3 class fuzzy poverty
FuzzySupplementary(x)
FuzzySupplementary(x)
x |
an object |
an object of class FuzzyPoverty
This function calculates the head count ratio.
HCR(predicate, weight = NULL, p = 0.5, q = 0.6, poverty.line = NULL)
HCR(predicate, weight = NULL, p = 0.5, q = 0.6, poverty.line = NULL)
predicate |
A numeric vector of a predicate variable (i.e. income or expenditure) |
weight |
A numeric vector of sampling weights. if NULL simple random sampling weights will be used |
p |
The quantile to be calculated from the predicate variable. Default is the median |
q |
The percentage of the quantile to be used in determining the poverty line. default is 0.6 |
poverty.line |
The poverty line. If it is NULL it is estimated from data. |
The head count ration is defined as the sum of the sampling weight of statistical units whose vale of the predicate variable is below the poverty line. The poverty line is usually defined as a fraction of a weighted quantile (in official statistics the median) of the predicate distribution
A list containing the classification of the units as poor (TRUE) and not-poor (FALSE), the estimated Head Count Ratio, and the poverty line
N <- 100 p <- 0.5 q <- 0.6 predicate <- rchisq(N, 15) # predicate variable HCR(predicate)
N <- 100 p <- 0.5 q <- 0.6 predicate <- rchisq(N, 15) # predicate variable HCR(predicate)
plot method for class "FuzzyMonetary"
## S3 method for class 'FuzzyMonetary' plot(x, ...)
## S3 method for class 'FuzzyMonetary' plot(x, ...)
x |
An object of class "FuzzyMonetary" |
... |
Additional options |
The plot
#The following example is based on the dataset eusilc #included in the package. #fm = "verma" index = fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma", HCR = 0.154, ID = eusilc$ID) plot(index)
#The following example is based on the dataset eusilc #included in the package. #fm = "verma" index = fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma", HCR = 0.154, ID = eusilc$ID) plot(index)
plot method for class "FuzzySupplementary"
## S3 method for class 'FuzzySupplementary' plot(x, ...)
## S3 method for class 'FuzzySupplementary' plot(x, ...)
x |
An object of class "FuzzySupplementary" |
... |
Additional options |
The plot
#This example is based on the dataset eusilc included in the package #The plot of the FS index is compute with breakdown and using an HCR = 0.12 FS <- fs_construct_all(data = eusilc[,4:23], weight = eusilc$DB090, # step 2 dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5), # step 3 rho = NULL, # steps 4 and 5 HCR = .12, # step 6 breakdown = eusilc$db040) # step 7 with breakdowns plot(FS)
#This example is based on the dataset eusilc included in the package #The plot of the FS index is compute with breakdown and using an HCR = 0.12 FS <- fs_construct_all(data = eusilc[,4:23], weight = eusilc$DB090, # step 2 dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5), # step 3 rho = NULL, # steps 4 and 5 HCR = .12, # step 6 breakdown = eusilc$db040) # step 7 with breakdowns plot(FS)
Summary method for class "FuzzyMonetary"
## S3 method for class 'FuzzyMonetary' summary(object, ...)
## S3 method for class 'FuzzyMonetary' summary(object, ...)
object |
An object of class "FuzzyMonetary" |
... |
Additional options |
The summary method for class "FuzzyMonetary"
#The following example is based on the dataset eusilc #included in the package. #fm = "verma" index = fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma", HCR = 0.154, ID = eusilc$ID) summary(index)
#The following example is based on the dataset eusilc #included in the package. #fm = "verma" index = fm_construct(predicate = eusilc$eq_income, weight = eusilc$DB090, fm = "verma", HCR = 0.154, ID = eusilc$ID) summary(index)
Summary method for class "FuzzySupplementary"
## S3 method for class 'FuzzySupplementary' summary(object, ...)
## S3 method for class 'FuzzySupplementary' summary(object, ...)
object |
An object of class "FuzzySupplementary" |
... |
Additional options |
The summary method for class "FuzzySupplementary"
#This example is based on the dataset eusilc included in the package #The summary of FS index is compute with breakdown and using an HCR = 0.12 FS <- fs_construct_all(data = eusilc[,4:23], weight = eusilc$DB090, # step 2 dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5), # step 3 rho = NULL, # steps 4 and 5 HCR = .12, # step 6 breakdown = eusilc$db040) # step 7 with breakdowns summary(FS)
#This example is based on the dataset eusilc included in the package #The summary of FS index is compute with breakdown and using an HCR = 0.12 FS <- fs_construct_all(data = eusilc[,4:23], weight = eusilc$DB090, # step 2 dimensions = c(1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5), # step 3 rho = NULL, # steps 4 and 5 HCR = .12, # step 6 breakdown = eusilc$db040) # step 7 with breakdowns summary(FS)