# Example 1
data(eusilc)
set.seed(1)
data <- data.table(eusilc,
year=rep(2010, nrow(eusilc)),
country=rep("AT", nrow(eusilc)))
data[, country:=as.character(country)]
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)]
result11 <- vardcros(Y="arope",
H="strata", PSU="PSU", w_final="rb050",
id="db030", Dom="rb090", Z=NULL,
country="country", periods="year",
dataset=data,
linratio=FALSE,
withperiod=TRUE,
netchanges=TRUE,
confidence = .95)
# Example 2
data(eusilc)
set.seed(1)
data <- data.table(rbind(eusilc, eusilc),
year=c(rep(2010, nrow(eusilc)),
rep(2011, nrow(eusilc))),
country=c(rep("AT", nrow(eusilc)),
rep("AT", nrow(eusilc))))
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[, 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)]
result11 <- vardcros(Y=c("pov", "dep", "arope"),
H="strata", PSU="PSU", w_final="rb050",
id="db030", 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="db030", 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))),
rb020=c(rep("AT", nrow(eusilc)),
rep("AT", nrow(eusilc)),
rep("AT", nrow(eusilc)),
rep("AT", nrow(eusilc))))
data[, rb020:=as.character(rb020)]
data[, u:=1]
data[age<0, age:=0]
data[, strata:="XXXX"]
PSU <- data[,.N, keyby="db030"]
PSU[, 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)
setnames(thres, names(thres), tolower(names(thres)))
data <- merge(data, thres, all.x=TRUE, by=c("rb010", "rb020"))
data[is.na(u), u:=0]
data <- data[u==1]
setkeyv(data, c("rb020", "rb030"))
#############
# T3 #
#############
T3 <- data[rb010==year-3]
T3[, strata1:=strata]
T3[, PSU1:=PSU]
T3[, w1:=rb050]
T3[, inc1:=eqIncome]
T3[, rb110_1:=db030]
setnames(T3, "thres", "thres1")
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)
apv <- merge(apv, T1, all=TRUE)
apv <- merge(apv, T0, all=TRUE)
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)]
result20 <- vardcros(Y="ppr", H="strata", PSU="PSU",
w_final="w4", id="rb030",
Dom = NULL, Z=NULL,
country="rb020", periods=NULL,
dataset=apv,
linratio=FALSE,
withperiod=FALSE,
netchanges=FALSE,
confidence = .95)
Run the code above in your browser using DataLab