# Example 1
data(eusilc)
set.seed(1)
data <- data.table(eusilc)
data[, year := 2010]
data[, country := "AT"]
data[age<0, age := 0]
PSU <- data[, .N, keyby = "db030"]
PSU[, N := NULL]
PSU[, PSU := trunc(runif(nrow(PSU), 0, 100))]
data <- merge(data, PSU, by = "db030", all = TRUE)
PSU <- eusilc <- 0
data[, strata := "XXXX"]
data[, t_pov := trunc(runif(nrow(data), 0, 2))]
data[, t_dep := trunc(runif(nrow(data), 0, 2))]
data[, t_lwi := trunc(runif(nrow(data), 0, 2))]
data[, exp := 1]
data[, exp2 := 1 * (age < 60)]
# At-risk-of-poverty (AROP)
data[, pov := ifelse (t_pov == 1, 1, 0)]
# Severe material deprivation (DEP)
data[, dep := ifelse (t_dep == 1, 1, 0)]
# Low work intensity (LWI)
data[, lwi := ifelse (t_lwi == 1 & exp2 == 1, 1, 0)]
# At-risk-of-poverty or social exclusion (AROPE)
data[, arope := ifelse (pov == 1 | dep == 1 | lwi == 1, 1, 0)]
data[, id2 := .I]
result11 <- vardcros(Y="arope", H = "strata",
PSU = "PSU", w_final = "rb050",
ID_level1 = "db030", ID_level2 = "db030",
Dom = "rb090", Z = NULL, country = "country",
period = "year", dataset = data,
linratio = FALSE, withperiod = TRUE,
netchanges = TRUE, confidence = .95)
## Not run:
# # Example 2
# data(eusilc)
# set.seed(1)
# data <- data.table(rbind(eusilc, eusilc),
# year=c(rep(2010, nrow(eusilc)),
# rep(2011, nrow(eusilc))))
# data[, country := "AT"]
# data[age<0, age:=0]
# PSU <- data[, .N, keyby = "db030"][, N := NULL]
# PSU[, PSU := trunc(runif(nrow(PSU), 0, 100))]
# data <- merge(data, PSU, by = "db030", all = TRUE)
# PSU <- eusilc <- 0
# data[, strata := "XXXX"]
# data[, strata := as.character(strata)]
# data[, t_pov := trunc(runif(nrow(data), 0, 2))]
# data[, t_dep := trunc(runif(nrow(data), 0, 2))]
# data[, t_lwi := trunc(runif(nrow(data), 0, 2))]
# data[, exp := 1]
# data[, exp2 := 1 * (age < 60)]
#
# # At-risk-of-poverty (AROP)
# data[, pov := ifelse (t_pov == 1, 1, 0)]
#
# # Severe material deprivation (DEP)
# data[, dep := ifelse (t_dep == 1, 1, 0)]
#
# # Low work intensity (LWI)
# data[, lwi := ifelse (t_lwi == 1 & exp2 == 1, 1, 0)]
#
# # At-risk-of-poverty or social exclusion (AROPE)
# data[, arope := ifelse (pov == 1 | dep == 1 | lwi == 1, 1, 0)]
# data[, id2 := .I]
#
# result11 <- vardcros(Y = c("pov", "dep", "arope"),
# H = "strata", PSU = "PSU", w_final = "rb050",
# ID_level1 = "db030", ID_level2 = "id2",
# Dom = "rb090", Z = NULL, country = "country",
# period = "year", dataset=data, linratio = FALSE,
# withperiod = TRUE, netchanges = TRUE,
# confidence = .95)
#
# data2 <- data[exp2 == 1]
# result12 <- vardcros(Y = c("lwi"), H = "strata",
# PSU = "PSU", w_final = "rb050",
# ID_level1 = "db030", ID_level2 = "id2",
# Dom = "rb090", Z = NULL,
# country = "country", period = "year",
# dataset = data2, linratio = FALSE,
# withperiod = TRUE, netchanges = TRUE,
# confidence = .95)
#
#
# ### Example 3
# data(eusilc)
# set.seed(1)
# year <- 2011
# data <- data.table(rbind(eusilc, eusilc, eusilc, eusilc),
# rb010=c(rep(2008, nrow(eusilc)),
# rep(2009, nrow(eusilc)),
# rep(2010, nrow(eusilc)),
# rep(2011, nrow(eusilc))))
# data[, rb020 := "AT"]
#
# data[, u := 1]
# data[age < 0, age := 0]
# data[, strata := "XXXX"]
# PSU <- data[, .N, keyby = "db030"][, N:=NULL]
# PSU[, PSU := trunc(runif(nrow(PSU), 0, 100))]
# data <- merge(data, PSU, by = "db030", all = TRUE)
# thres <- data.table(rb020 = as.character(rep("AT", 4)),
# thres = c(11406, 11931, 12371, 12791),
# rb010 = 2008 : 2011)
# data <- merge(data, thres, all.x = TRUE, by = c("rb010", "rb020"))
# data[is.na(u), u := 0]
# data <- data[u == 1]
#
# #############
# # T3 #
# #############
#
# T3 <- data[rb010 == year - 3]
# T3[, strata1 := strata]
# T3[, PSU1 := PSU]
# T3[, w1 := rb050]
# T3[, inc1 := eqIncome]
# T3[, rb110_1 := db030]
# T3[, pov1 := inc1 <= thres1]
# T3 <- T3[, c("rb020", "rb030", "strata", "PSU", "inc1", "pov1"), with = FALSE]
#
# #############
# # T2 #
# #############
# T2 <- data[rb010 == year - 2]
# T2[, strata2 := strata]
# T2[, PSU2 := PSU]
# T2[, w2 := rb050]
# T2[, inc2 := eqIncome]
# T2[, rb110_2 := db030]
# setnames(T2, "thres", "thres2")
# T2[, pov2 := inc2 <= thres2]
# T2 <- T2[, c("rb020", "rb030", "strata2", "PSU2", "inc2", "pov2"), with = FALSE]
#
# #############
# # T1 #
# #############
# T1 <- data[rb010 == year - 1]
# T1[, strata3 := strata]
# T1[, PSU3 := PSU]
# T1[, w3 := rb050]
# T1[, inc3 := eqIncome]
# T1[, rb110_3 := db030]
# setnames(T1, "thres", "thres3")
# T1[, pov3 := inc3 <= thres3]
# T1 <- T1[, c("rb020", "rb030", "strata3", "PSU3", "inc3", "pov3"), with = FALSE]
#
# #############
# # T0 #
# #############
# T0 <- data[rb010 == year]
# T0[, PSU4 := PSU]
# T0[, strata4 := strata]
# T0[, w4 := rb050]
# T0[, inc4 := eqIncome]
# T0[, rb110_4 := db030]
# setnames(T0, "thres", "thres4")
# T0[, pov4 := inc4 <= thres4]
# T0 <- T0[, c("rb020", "rb030", "strata4", "PSU4", "w4", "inc4", "pov4"), with = FALSE]
# apv <- merge(T3, T2, all = TRUE, by = c("rb020", "rb030"))
# apv <- merge(apv, T1, all = TRUE, by = c("rb020", "rb030"))
# apv <- merge(apv, T0, all = TRUE, by = c("rb020", "rb030"))
# apv <- apv[(!is.na(inc1)) & (!is.na(inc2)) & (!is.na(inc3)) & (!is.na(inc4))]
# apv[, ppr := ifelse(((pov4 == 1) & ((pov1 == 1 & pov2 == 1 & pov3 == 1) | (pov1 == 1 &
# pov2 == 1 & pov3 == 0) | (pov1 == 1 & pov2 == 0 & pov3 == 1) |
# (pov1 == 0 & pov2 ==1 & pov3 == 1))), 1, 0)]
#
# data[, id2 := .I]
# result20 <- vardcros(Y = "ppr", H = "strata", PSU = "PSU",
# w_final = "w4", ID_level1="rb030",
# ID_level2 = "rb030", Dom = NULL,
# Z = NULL, country = "rb020",
# period = NULL, dataset = apv,
# linratio = FALSE,
# withperiod = FALSE,
# netchanges = FALSE,
# confidence = .95)## End(Not run)
Run the code above in your browser using DataLab