rm(list = ls())
library(IC2)
library(codebook)
library(tidyverse)
dat <- read.csv("./_dat/dat_mal_ineq_v3.csv")
source("./mal_ineq_fun.R")
# epiDisplay::tab1(dat$rapid_test)
#codebook_browser(dat)
# ==== NOT RUN =======
# ao <- dat %>%
# filter(country == "SN") %>%
# dplyr::select(rapid_test, wealth, w) %>%
# filter(complete.cases(.))
#
# ao_ci <- IC2::calcSConc(x = ao$rapid_test,
# y = ao$wealth,
# w = ao$w)
# ==== NOT RUN =======
dat.n <- dat %>%
group_by(country, REGNAME, cluster_number) %>%
nest() %>%
mutate(sample.size.N = map(.x = data, .f = ~dplyr::select(.x, rapid_test, wealth, w) %>%
count(name = "N") %>% unlist()),
sample.size.m = map(.x = data, .f = ~dplyr::select(.x, rapid_test, wealth, w) %>%
filter(!is.na(rapid_test)) %>%
count(name = "N_m") %>% unlist()),
dat_s = map(.x = data, .f = ~dplyr::select(.x, rapid_test, wealth, w) %>%
filter(complete.cases(.))),
sample.size = map(.x = dat_s, .f = ~count(.x) %>% unlist()),
prev = map(.x = dat_s, .f = ~mean(.x$rapid_test, na.rm=T)),
wealth_cats = map(.x = dat_s, .f = ~distinct(.x, wealth) %>% nrow())) %>%
# FILTERS =======================
filter(prev > 0 & prev < 1) %>%
filter(sample.size>=10) %>%
filter(wealth_cats>1)
dat_ci.n <- dat.n %>%
mutate(ci = map(.x = dat_s, .f = ~IC2::calcSConc(x = .x$rapid_test,
y = .x$wealth,
w = .x$w)),
ci_val = map(.x = ci, .f = ~.x$ineq$index),
h_calc = map(.x = dat_s, .f = ~h_ineq(dat = .x, var_soc = wealth, var_outcome = rapid_test))
)
dat_ci <- dat_ci.n %>%
dplyr::select(country, cluster_number, sample.size.N, sample.size.m, sample.size, prev, wealth_cats, ci_val, h_calc) %>%
unnest() %>%
ungroup()
# Checks ========
dat_ci %>%
ggplot(aes(x=c_index, y = ci_val)) +
geom_point(alpha = .4) +
labs(x = "hand calculation", y = "package calculation")
# ==== NOT RUN =======
# unique(dat.n$country)
# unique(dat_ci$country)
#
# range(dat$w)
# range(dat_ci$N_m)
# range(dat_ci$n)
# range(dat_ci$ci_val, na.rm = T)
#
# hist(dat_ci$N_m)
# hist(dat_ci$n)
# hist(dat_ci$ci_val)
# ==== NOT RUN =======
#saveRDS(dat_ci, "./_dat/dat_ci.rds")