Summarise BW and LBW models without controlling for gestational age: growth or gestational age path
In this script we summarise the results of the BW and LBW models without controlling for gestational age. We also include comparisons between different types of profiles. The resulting table can be seen in section Display summary.
Load packages, read data and source custom scripts
rm(list = ls())
library(bamlss)
#> Loading required package: coda
#> Loading required package: colorspace
#> Loading required package: mgcv
#> Loading required package: nlme
#> This is mgcv 1.8-31. For overview type 'help("mgcv-package")'.
#>
#> Attaching package: 'bamlss'
#> The following object is masked from 'package:mgcv':
#>
#> smooth.construct
library(gamlss.dist)
#> Loading required package: MASS
library(ggplot2)
library(patchwork)
#>
#> Attaching package: 'patchwork'
#> The following object is masked from 'package:MASS':
#>
#> area
library(dplyr)
#>
#> Attaching package: 'dplyr'
#> The following object is masked from 'package:MASS':
#>
#> select
#> The following object is masked from 'package:bamlss':
#>
#> n
#> The following object is masked from 'package:nlme':
#>
#> collapse
#> The following objects are masked from 'package:stats':
#>
#> filter, lag
#> The following objects are masked from 'package:base':
#>
#> intersect, setdiff, setequal, union
path_proj <- day2day::git_path()
path_data <- file.path(path_proj, "data")
path_processed <- file.path(path_data, "processed")
path_modelled <- file.path(path_data, "modelled")
path_summarised <- file.path(path_data, "summarised")
source(file.path(path_proj, "src", "50-summarization.R"))
source(file.path(path_proj, "src", "51-bamlss.R"))
bwdata_file <- file.path(path_processed, "bwdata_41_model.fst")
path_model_bw_full <- file.path(path_modelled, "bw-10-full-re-t-burned.rds")
path_model_lbw_full <- file.path(path_modelled, "lbw-10-full-re-burned.rds")
bwdata_model <- fst::read_fst(bwdata_file)
model_bw <- readRDS(path_model_bw_full)
model_lbw <- readRDS(path_model_lbw_full)
data_points_all <- readRDS(file.path(path_processed, "exposure-reference-points.rds"))
ama <- sf::st_read(file.path(path_processed, "ama_05_62.gpkg")) %>%
dplyr::select(mun_code, inc_study, mun_name)
#> Reading layer `ama_05_62' from data source `/home/rstudio/Documents/Projects/data-amazonia/70-studies/birthweight/data/processed/ama_05_62.gpkg' using driver `GPKG'
#> Simple feature collection with 62 features and 373 fields
#> geometry type: MULTIPOLYGON
#> dimension: XY
#> bbox: xmin: 1573261 ymin: 8909613 xmax: 3542869 ymax: 10248330
#> projected CRS: unnamed
data_summary <- tibble::tribble(~description, ~value,
"number of birth registration (modelled)", as.character(nrow(bwdata_model)),
"period of study", "2006 - 2017")
# model summary
bamlss_sum <- summary(model_bw)
bamlss_lbw_sum <- summary(model_lbw)
data_summary <- tibble::tribble(~description, ~value,
"mean birthweight", round(mean(bwdata_model$born_weight), 3),
"mean birthweight on baseline group", round(bamlss_sum$model.matrix$mu[1, 1], 3),
"proportion of low birthweight", round(mean(bwdata_model$born_weight < 2500), 3)
) %>%
rbind(data_summary, .)
# disadvantage profiles
profiles <- data.frame(
age = c(15, 30),
born_race = factor(c("indigenous", "non-indigenous"),
levels = levels(bwdata_model$born_race)),
study_years = factor(c("no", "4 - 7"),
levels = levels(bwdata_model$study_years)),
marital_status = factor(c("single", "married"),
levels = levels(bwdata_model$marital_status)),
consult_num = factor(c("0", "> 7"),
levels = levels(bwdata_model$consult_num)),
birth_place = factor(c("home", "hospital"),
levels = levels(bwdata_model$birth_place))
)
disadvantage_eff <- predict(model_bw, profiles, "mu",
c("s(age)", "born_race", "study_years", "marital_status", "consult_num", "birth_place"),
intercept = FALSE , FUN = function (x) x) %>% as.matrix() %>% diff() %>% as.numeric() %>% c95()
disadvantage_eff_lbw <- predict(model_lbw, profiles, "pi",
c("s(age)", "born_race", "study_years", "marital_status", "consult_num", "birth_place"),
intercept = FALSE, FUN = function (x) x)
odds <- t(apply(disadvantage_eff_lbw, 1, function (x) c95(exp(x))))
disadvantage_odds_ratio <- disadvantage_eff_lbw[2:1, ] %>% as.matrix() %>% diff() %>% as.numeric() %>% exp() %>% c95()
data_summary <- tibble::tribble(~description, ~value,
"penalty when born to adolescent, indigenous Amerindian, unmarried mothers that received no formal education, antenatal or obstetric healthcare", ci_character(disadvantage_eff),
"odds ratio when born to adolescent, indigenous Amerindian, unmarried mothers that received no formal education, antenatal or obstetric healthcare", ci_character(disadvantage_odds_ratio),
"odds change (with respect to baseline) when born to adolescent, indigenous Amerindian, unmarried mothers that received no formal education, antenatal or obstetric healthcare", ci_character(odds[1, ]),
"odds change (with respect to baseline) when born to mature, non-indigenous, married mothers that received formal education (4-7), antenatal or obstetric healthcare", ci_character(odds[2, ])
) %>%
rbind(data_summary, .)
profiles_advantage <- data.frame(
age = rep(30, 2),
sex = factor(c("male", "female"),
levels = levels(bwdata_model$sex)),
born_race = factor(rep("non-indigenous", 2),
levels = levels(bwdata_model$born_race)),
study_years = factor(rep("4 - 7", 2),
levels = levels(bwdata_model$study_years)),
marital_status = factor(rep("married", 2),
levels = levels(bwdata_model$marital_status)),
consult_num = factor(rep("> 7", 2),
levels = levels(bwdata_model$consult_num)),
birth_place = factor(rep("hospital", 2),
levels = levels(bwdata_model$birth_place))
)
profiles_advantage_mean <- predict(model_bw, profiles_advantage, "mu",
c("s(age)", "sex", "born_race", "study_years", "marital_status", "consult_num", "birth_place"),
intercept = TRUE , FUN = function (x) c95(x))
c95_prob <- function(x) c(c95(x), exceed = mean(x > 0))
c95_exp_prob <- function(x) c(c95(exp(x)), exceed = mean(x > 0))
# extremes bw
data_extremes <- data_points_all[[3]] %>%
mutate(description = paste0(" extreme effects of ", label, " (", description, ")"))
ext_eff <- predict_effect(model_bw, data_extremes,
"mu", "s(neg_ext_mbsi_mean_8wk,pos_ext_mbsi_mean_8wk)")
data_summary <-
data_extremes %>%
dplyr::mutate(value = ci_character(ext_eff)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
data_extremes <- data_points_all[[3]] %>%
mutate(description = paste0("extreme effects: baseline comparison of ",
label, " - A (", description, ")"))
ext_eff_base <- predict_effect_baseline(
model_bw, data_extremes,
"mu", "s(neg_ext_mbsi_mean_8wk,pos_ext_mbsi_mean_8wk)", FUN = c95_prob
)
data_summary <-
data_extremes %>%
dplyr::mutate(value = ci_character_exceed(ext_eff_base)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
# extremes lbw
data_extremes_lbw <- data_points_all[[3]] %>%
mutate(description = paste0("odds of extreme events ", label, " (", description, ")"))
data_extremes_lbw[data_extremes_lbw$label == "E", "y"] <- 0.4
ext_eff_lbw <- predict_effect(model_lbw, data_extremes_lbw, "pi",
"s(neg_ext_mbsi_mean_8wk,pos_ext_mbsi_mean_8wk)",
FUN = function(x) c95(exp(x)))
data_summary <- data_extremes_lbw %>%
dplyr::mutate(value = ci_character(ext_eff_lbw, 3)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
data_extremes_lbw <- data_points_all[[3]] %>%
mutate(description = paste0("extreme effects: odds ratio of ",
label, " - A (", description, ")"))
data_extremes_lbw[data_extremes_lbw$label == "E", "y"] <- 0.4
ext_eff_lbw_base <- predict_effect_baseline(
model_lbw, data_extremes_lbw, "pi",
"s(neg_ext_mbsi_mean_8wk,pos_ext_mbsi_mean_8wk)",
FUN = c95_exp_prob)
data_summary <- data_extremes_lbw %>%
dplyr::mutate(value = ci_character_exceed(ext_eff_lbw_base, 3)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
# non extreme events
data_events <- data_points_all[[2]] %>%
mutate(description = paste0("non-extreme effects of ", label, " (", description, ")"))
events_eff <- predict_effect(model_bw, data_events,
"mu", "s(neg_mckee_mean_8wk,pos_mckee_mean_8wk)")
data_summary <- data_events %>%
dplyr::mutate(value = ci_character(events_eff)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
data_events <- data_points_all[[2]] %>%
mutate(description = paste0("non-extreme effects: baseline comparison of ",
label, " - A (", description, ")"))
events_eff_base <- predict_effect_baseline(
model_bw, data_events, "mu",
"s(neg_mckee_mean_8wk,pos_mckee_mean_8wk)",
FUN = c95_prob
)
data_summary <- data_events %>%
dplyr::mutate(value = ci_character_exceed(events_eff_base)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
# non extreme lbw
data_events_lbw <- data_points_all[[2]] %>%
mutate(description = paste0("odds of non-extreme effects of ",
label, " (", description, ")"))
events_eff_lbw <- predict_effect(model_lbw, data_events_lbw,
"pi", "s(neg_mckee_mean_8wk,pos_mckee_mean_8wk)",
FUN = function(x) c95(exp(x)))
data_summary <- data_events_lbw %>%
dplyr::mutate(value = ci_character(events_eff_lbw)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
data_events_lbw <- data_points_all[[2]] %>%
mutate(description = paste0("non-extreme effects: odds ratio of ",
label, " - A (", description, ")"))
events_eff_lbw_base <- predict_effect_baseline(
model_lbw, data_events_lbw, "pi",
"s(neg_mckee_mean_8wk,pos_mckee_mean_8wk)",
FUN = c95_exp_prob)
data_summary <- data_events_lbw %>%
dplyr::mutate(value = ci_character_exceed(events_eff_lbw_base)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
# deviations from seasonality
data_deviations <- data_points_all[[1]] %>%
mutate(description = paste0("seasonal deviation effects of ", label, " (",
description, ")"))
deviations_eff <- predict_effect(model_bw, data_deviations,
"mu", "s(neg_mbsi_mean_1wk,pos_mbsi_mean_1wk)")
data_summary <- data_deviations %>%
dplyr::mutate(value = ci_character(deviations_eff)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
data_deviations <- data_points_all[[1]] %>%
mutate(description = paste0("seasonal deviation effects: baseline comparison of ",
label, " - A (", description, ")"))
deviations_eff <- predict_effect_baseline(
model_bw, data_deviations, "mu",
"s(neg_mbsi_mean_1wk,pos_mbsi_mean_1wk)",
FUN = c95_prob
)
data_summary <- data_deviations %>%
dplyr::mutate(value = ci_character_exceed(deviations_eff)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
# deviations from seasonality lbw
data_deviations_lbw <- data_points_all[[1]] %>%
mutate(description = paste0("odds of seasonal deviation effects of ", label, " (",
description, ")"))
deviations_eff_lbw <- predict_effect(model_lbw, data_deviations_lbw,
"pi", "s(neg_mbsi_mean_1wk,pos_mbsi_mean_1wk)",
FUN = function(x) c95(exp(x)))
data_summary <- data_deviations_lbw %>%
dplyr::mutate(value = ci_character(deviations_eff_lbw)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
data_deviations_lbw <- data_points_all[[1]] %>%
mutate(description = paste0("seasonal deviation effects: odds ratio of ",
label, " - A(", description, ")"))
deviations_eff_lbw <- predict_effect_baseline(
model_lbw, data_deviations_lbw, "pi",
"s(neg_mbsi_mean_1wk,pos_mbsi_mean_1wk)",
FUN = c95_exp_prob)
data_summary <- data_deviations_lbw %>%
dplyr::mutate(value = ci_character_exceed(deviations_eff_lbw)) %>%
dplyr::select(description, value) %>%
rbind(data_summary, .)
# remoteness municipality level effects (mean and lbw)
data_summary <-
effect_summary_prob(model_bw, model_lbw, data.frame(c(0.25, 0.75)),
term = "remoteness",
label_1 = "low remoteness", label_2 = "high remoteness") %>%
rbind(data_summary, .)
# sanitation municipality level effects (mean and lbw)
data_summary <-
effect_summary_prob(model_bw, model_lbw, data.frame(c(0.45, 0.20)),
term = "prop_tap_toilet",
label_1 = "high sanitation", label_2 = "low sanitation") %>%
rbind(data_summary, .)
# municipality profiles
profiles_mun <- tibble::tribble(~x, ~y,
0.25, 0.50,
0.8, 0.15)
data_summary <-
effect_summary_prob(model_bw, model_lbw, profiles_mun,
term = c("remoteness", "prop_tap_toilet"),
label_1 = "not remote and high sanitation",
label_2 = "remote and low sanitation") %>%
rbind(data_summary, .)
# age effect (mean and lbw)
data_summary <-
effect_summary(model_bw, model_lbw, data.frame(c(30, 15)), term = "s(age)",
label_1 = "mature mothers", label_2 = "young mothers") %>%
rbind(data_summary, .)
# education effect (mean and lbw)
data_study <- data.frame(factor(c("1 - 3", "no"), levels(bwdata_model$study_years)))
data_summary <-
effect_summary(model_bw, model_lbw, data_study, term = "study_years",
label_1 = "mother with education", label_2 = "mothers with no formal education") %>%
rbind(data_summary, .)
# education effect (mean and lbw)
data_aux <- data.frame(factor(c("4 - 7", "no"), levels(bwdata_model$study_years)))
data_summary <-
effect_summary(model_bw, model_lbw, data_aux, term = "study_years",
label_1 = "mother with education", label_2 = "mothers with no formal education") %>%
rbind(data_summary, .)
# marital status effect (mean and lbw)
data_aux <- data.frame(factor(c("married", "single"), levels(bwdata_model$marital_status)))
data_summary <-
effect_summary(model_bw, model_lbw, data_aux, term = "marital_status",
label_1 = "married mothers", label_2 = "single mothers") %>%
rbind(data_summary, .)
# antenatal care effect (mean and lbw)
data_aux <- data.frame(factor(c("> 7", "0"), levels(bwdata_model$consult_num)))
data_summary <-
effect_summary(model_bw, model_lbw, data_aux, term = "consult_num",
label_1 = "mothers with ante-natal care", label_2 = "mothers with no ante-natal care") %>%
rbind(data_summary, .)
# birth place effect (mean and lbw)
data_aux <- data.frame(factor(c("hospital", "home"), levels(bwdata_model$birth_place)))
data_summary <-
effect_summary(model_bw, model_lbw, data_aux, term = "birth_place",
label_1 = "births in medical facility (hospital)", label_2 = "births outside medical facility (home)") %>%
rbind(data_summary, .)
# indigenous effect (mean and lbw)
data_aux <- data.frame(factor(c("non-indigenous", "indigenous"), levels(bwdata_model$born_race)))
data_summary <-
effect_summary(model_bw, model_lbw, data_aux, term = "born_race",
label_1 = "non-indigenous", label_2 = "indigenous") %>%
rbind(data_summary, .)
# river week seasonal effect (mean and lbw)
data_summary <-
effect_summary_prob(model_bw, model_lbw, data.frame(c(0, 30)), term = "s(rivwk_conception)",
label_1 = "wet season", label_2 = "dry season", digits = 3) %>%
rbind(data_summary, .)
# river week seasonal effect (mean and lbw)
data_summary <-
effect_summary_prob(model_bw, model_lbw, data.frame(c(5, 39)), term = "s(rivwk_conception)",
label_1 = "wet season", label_2 = "rising season", digits = 3) %>%
rbind(data_summary, .)
# temporal effect (mean and lbw)
data_summary <-
effect_summary(model_bw, model_lbw, data.frame(c(167, 700)), term = "s(wk_ini)",
label_1 = "2006", label_2 = "2016") %>%
rbind(data_summary, .)
Municipality comparisons
mun_names <- c("Envira", "Carauari")
mun_codes <- ama$mun_code[match(mun_names, ama$mun_name)]
data_aux <- data.frame(factor(mun_codes, levels(bwdata_model$res_muni)))
data_summary <-
effect_summary(model_bw, model_lbw, data_aux, term = "s(res_muni)",
label_1 = mun_names[1], label_2 = mun_names[2]) %>%
rbind(data_summary, .)
Display summary
cap <- "Summarise BW and LBW models without controlling for gestational age."
knitr::kable(data_summary, "html", table.attr = "class=\"table\"",
caption = cap)
description | value |
---|---|
number of birth registration (modelled) | 291479 |
period of study | 2006 - 2017 |
mean birthweight | 3219.386 |
mean birthweight on baseline group | 3098.171 |
proportion of low birthweight | 0.061 |
penalty when born to adolescent, indigenous Amerindian, unmarried mothers that received no formal education, antenatal or obstetric healthcare | 646.43 (CI: 632.47, 660.11) |
odds ratio when born to adolescent, indigenous Amerindian, unmarried mothers that received no formal education, antenatal or obstetric healthcare | 10.21 (CI: 8.98, 11.48) |
odds change (with respect to baseline) when born to adolescent, indigenous Amerindian, unmarried mothers that received no formal education, antenatal or obstetric healthcare | 1.89 (CI: 1.76, 2.02) |
odds change (with respect to baseline) when born to mature, non-indigenous, married mothers that received formal education (4-7), antenatal or obstetric healthcare | 0.19 (CI: 0.17, 0.21) |
extreme effects of A (None) | -2.75 (CI: -5.27, -0.16) |
extreme effects of B (Intense and deficient) | -20.11 (CI: -156.11, 106.56) |
extreme effects of C (Intense) | -185.65 (CI: -321.9, -59.38) |
extreme effects of E (Moderate intense) | -62.81 (CI: -112.66, -15.31) |
extreme effects of D (Deficient) | -56.92 (CI: -195.84, 80.22) |
extreme effects: baseline comparison of A - A (None) | 0 (CI: 0, 0); P(diff > 0) = 0 |
extreme effects: baseline comparison of B - A (Intense and deficient) | -17.366 (CI: -153.516, 109.127); P(diff > 0) = 0.404 |
extreme effects: baseline comparison of C - A (Intense) | -182.9 (CI: -319.099, -56.525); P(diff > 0) = 0.002 |
extreme effects: baseline comparison of E - A (Moderate intense) | -60.067 (CI: -109.935, -11.403); P(diff > 0) = 0.009 |
extreme effects: baseline comparison of D - A (Deficient) | -54.168 (CI: -193.317, 83.759); P(diff > 0) = 0.248 |
odds of extreme events A (None) | 1.043 (CI: 1.017, 1.071) |
odds of extreme events B (Intense and deficient) | 2.839 (CI: 0.583, 8.762) |
odds of extreme events C (Intense) | 1.725 (CI: 0.621, 3.804) |
odds of extreme events E (Moderate intense) | 1.937 (CI: 1.296, 2.829) |
odds of extreme events D (Deficient) | 2.722 (CI: 0.738, 7.545) |
extreme effects: odds ratio of A - A (None) | 1 (CI: 1, 1); P(diff > 0) = 0 |
extreme effects: odds ratio of B - A (Intense and deficient) | 2.724 (CI: 0.553, 8.314); P(diff > 0) = 0.866 |
extreme effects: odds ratio of C - A (Intense) | 1.655 (CI: 0.599, 3.662); P(diff > 0) = 0.798 |
extreme effects: odds ratio of E - A (Moderate intense) | 1.858 (CI: 1.233, 2.725); P(diff > 0) = 0.999 |
extreme effects: odds ratio of D - A (Deficient) | 2.612 (CI: 0.703, 7.183); P(diff > 0) = 0.918 |
non-extreme effects of A (None) | 3.37 (CI: -3.29, 10.03) |
non-extreme effects of B (Intense and deficient) | -13.49 (CI: -33.82, 6.64) |
non-extreme effects of C (Intense) | -24.42 (CI: -59.65, 8.83) |
non-extreme effects of D (Deficient) | -13.15 (CI: -64.52, 44.47) |
non-extreme effects: baseline comparison of A - A (None) | 0 (CI: 0, 0); P(diff > 0) = 0 |
non-extreme effects: baseline comparison of B - A (Intense and deficient) | -16.858 (CI: -38.417, 4.6); P(diff > 0) = 0.07 |
non-extreme effects: baseline comparison of C - A (Intense) | -27.783 (CI: -64.241, 6.73); P(diff > 0) = 0.061 |
non-extreme effects: baseline comparison of D - A (Deficient) | -16.513 (CI: -69.069, 45.813); P(diff > 0) = 0.278 |
odds of non-extreme effects of A (None) | 0.93 (CI: 0.87, 1) |
odds of non-extreme effects of B (Intense and deficient) | 1.15 (CI: 0.91, 1.44) |
odds of non-extreme effects of C (Intense) | 1.31 (CI: 0.96, 1.76) |
odds of non-extreme effects of D (Deficient) | 0.88 (CI: 0.47, 1.47) |
non-extreme effects: odds ratio of A - A (None) | 1 (CI: 1, 1); P(diff > 0) = 0 |
non-extreme effects: odds ratio of B - A (Intense and deficient) | 1.23 (CI: 0.973, 1.571); P(diff > 0) = 0.957 |
non-extreme effects: odds ratio of C - A (Intense) | 1.404 (CI: 1.012, 1.906); P(diff > 0) = 0.978 |
non-extreme effects: odds ratio of D - A (Deficient) | 0.942 (CI: 0.499, 1.623); P(diff > 0) = 0.358 |
seasonal deviation effects of A (None) | 1.94 (CI: -2.39, 7.27) |
seasonal deviation effects of B (Intense and deficient) | -4.81 (CI: -20.97, 9.15) |
seasonal deviation effects of C (Intense) | -2.24 (CI: -32.05, 22.91) |
seasonal deviation effects of D (Deficient) | -36.66 (CI: -83.87, -1.56) |
seasonal deviation effects: baseline comparison of A - A (None) | 0 (CI: 0, 0); P(diff > 0) = 0 |
seasonal deviation effects: baseline comparison of B - A (Intense and deficient) | -6.743 (CI: -24.653, 7.489); P(diff > 0) = 0.222 |
seasonal deviation effects: baseline comparison of C - A (Intense) | -4.176 (CI: -36.279, 22.013); P(diff > 0) = 0.424 |
seasonal deviation effects: baseline comparison of D - A (Deficient) | -38.6 (CI: -89.115, -0.704); P(diff > 0) = 0.025 |
odds of seasonal deviation effects of A (None) | 0.94 (CI: 0.89, 0.99) |
odds of seasonal deviation effects of B (Intense and deficient) | 1.18 (CI: 0.99, 1.46) |
odds of seasonal deviation effects of C (Intense) | 1.14 (CI: 0.9, 1.49) |
odds of seasonal deviation effects of D (Deficient) | 1.25 (CI: 0.86, 1.82) |
seasonal deviation effects: odds ratio of A - A(None) | 1 (CI: 1, 1); P(diff > 0) = 0 |
seasonal deviation effects: odds ratio of B - A(Intense and deficient) | 1.253 (CI: 1.015, 1.589); P(diff > 0) = 0.984 |
seasonal deviation effects: odds ratio of C - A(Intense) | 1.215 (CI: 0.935, 1.609); P(diff > 0) = 0.92 |
seasonal deviation effects: odds ratio of D - A(Deficient) | 1.325 (CI: 0.89, 1.962); P(diff > 0) = 0.919 |
bw: difference effect between high remoteness (0.75) and low remoteness (0.25) | -6 (CI: -36.32, 24.67); P(diff > 0) = 0.34 |
bw: effect of low remoteness (0.25) | -3 (CI: -18.16, 12.34); P(diff > 0) = 0.34 |
bw: effect of high remoteness (0.75) | -9 (CI: -54.47, 37.01); P(diff > 0) = 0.34 |
lbw: odds ratio between high remoteness (0.75) and low remoteness (0.25) | 1.11 (CI: 0.97, 1.26); P(diff > 0) = 0.94 |
lbw: odds change of low remoteness (0.25) | 1.05 (CI: 0.99, 1.12); P(diff > 0) = 0.94 |
lbw: odds change of high remoteness (0.75) | 1.16 (CI: 0.96, 1.42); P(diff > 0) = 0.94 |
bw: difference effect between low sanitation (0.2) and high sanitation (0.45) | -26.57 (CI: -56.56, 4.17); P(diff > 0) = 0.04 |
bw: effect of high sanitation (0.45) | 47.82 (CI: -7.51, 101.82); P(diff > 0) = 0.96 |
bw: effect of low sanitation (0.2) | 21.25 (CI: -3.34, 45.25); P(diff > 0) = 0.96 |
lbw: odds ratio between low sanitation (0.2) and high sanitation (0.45) | 1 (CI: 0.89, 1.13); P(diff > 0) = 0.52 |
lbw: odds change of high sanitation (0.45) | 1 (CI: 0.8, 1.24); P(diff > 0) = 0.48 |
lbw: odds change of low sanitation (0.2) | 1 (CI: 0.91, 1.1); P(diff > 0) = 0.48 |
bw: difference effect between remote and low sanitation (0.8, 0.15) and not remote and high sanitation (0.25, 0.5) | -43.79 (CI: -81.06, -5.85); P(diff > 0) = 0.01 |
bw: effect of not remote and high sanitation (0.25, 0.5) | 50.13 (CI: -21.7, 119.5); P(diff > 0) = 0.92 |
bw: effect of remote and low sanitation (0.8, 0.15) | 6.34 (CI: -52.76, 70); P(diff > 0) = 0.59 |
lbw: odds ratio between remote and low sanitation (0.8, 0.15) and not remote and high sanitation (0.25, 0.5) | 1.12 (CI: 0.96, 1.3); P(diff > 0) = 0.93 |
lbw: odds change of not remote and high sanitation (0.25, 0.5) | 1.06 (CI: 0.78, 1.39); P(diff > 0) = 0.62 |
lbw: odds change of remote and low sanitation (0.8, 0.15) | 1.18 (CI: 0.91, 1.52); P(diff > 0) = 0.89 |
bw: difference effect between young mothers (15) and mature mothers (30) | -248.17 (CI: -254.4, -242.37) |
bw: effect of mature mothers (30) | 79 (CI: 75.29, 82.94) |
bw: effect of young mothers (15) | -169.18 (CI: -173.47, -165.25) |
lbw: odds ratio between young mothers (15) and mature mothers (30) | 2.09 (CI: 1.99, 2.2) |
lbw: odds change of mature mothers (30) | 0.83 (CI: 0.8, 0.86) |
lbw: odds change of young mothers (15) | 1.74 (CI: 1.68, 1.8) |
bw: difference effect between mothers with no formal education (no) and mother with education (1 - 3) | -63.02 (CI: -71.53, -54.6) |
bw: effect of mother with education (1 - 3) | 63.02 (CI: 54.6, 71.53) |
bw: effect of mothers with no formal education (no) | 0 (CI: 0, 0) |
lbw: odds ratio between mothers with no formal education (no) and mother with education (1 - 3) | 1.28 (CI: 1.19, 1.38) |
lbw: odds change of mother with education (1 - 3) | 0.78 (CI: 0.73, 0.84) |
lbw: odds change of mothers with no formal education (no) | 1 (CI: 1, 1) |
bw: difference effect between mothers with no formal education (no) and mother with education (4 - 7) | -84.3 (CI: -92.51, -76.04) |
bw: effect of mother with education (4 - 7) | 84.3 (CI: 76.04, 92.51) |
bw: effect of mothers with no formal education (no) | 0 (CI: 0, 0) |
lbw: odds ratio between mothers with no formal education (no) and mother with education (4 - 7) | 1.33 (CI: 1.25, 1.43) |
lbw: odds change of mother with education (4 - 7) | 0.75 (CI: 0.7, 0.8) |
lbw: odds change of mothers with no formal education (no) | 1 (CI: 1, 1) |
bw: difference effect between single mothers (single) and married mothers (married) | -31.57 (CI: -37.19, -26.12) |
bw: effect of married mothers (married) | 31.57 (CI: 26.12, 37.19) |
bw: effect of single mothers (single) | 0 (CI: 0, 0) |
lbw: odds ratio between single mothers (single) and married mothers (married) | 1.17 (CI: 1.11, 1.24) |
lbw: odds change of married mothers (married) | 0.85 (CI: 0.81, 0.9) |
lbw: odds change of single mothers (single) | 1 (CI: 1, 1) |
bw: difference effect between mothers with no ante-natal care (0) and mothers with ante-natal care (> 7) | -150.7 (CI: -158.69, -142.88) |
bw: effect of mothers with ante-natal care (> 7) | 150.7 (CI: 142.88, 158.69) |
bw: effect of mothers with no ante-natal care (0) | 0 (CI: 0, 0) |
lbw: odds ratio between mothers with no ante-natal care (0) and mothers with ante-natal care (> 7) | 2.88 (CI: 2.7, 3.08) |
lbw: odds change of mothers with ante-natal care (> 7) | 0.35 (CI: 0.33, 0.37) |
lbw: odds change of mothers with no ante-natal care (0) | 1 (CI: 1, 1) |
bw: difference effect between births outside medical facility (home) (home) and births in medical facility (hospital) (hospital) | -74.15 (CI: -79.35, -69) |
bw: effect of births in medical facility (hospital) (hospital) | 0 (CI: 0, 0) |
bw: effect of births outside medical facility (home) (home) | -74.15 (CI: -79.35, -69) |
lbw: odds ratio between births outside medical facility (home) (home) and births in medical facility (hospital) (hospital) | 1.01 (CI: 0.97, 1.06) |
lbw: odds change of births in medical facility (hospital) (hospital) | 1 (CI: 1, 1) |
lbw: odds change of births outside medical facility (home) (home) | 1.01 (CI: 0.97, 1.06) |
bw: difference effect between indigenous (indigenous) and non-indigenous (non-indigenous) | -57.53 (CI: -62.93, -52.2) |
bw: effect of non-indigenous (non-indigenous) | 0 (CI: 0, 0) |
bw: effect of indigenous (indigenous) | -57.53 (CI: -62.93, -52.2) |
lbw: odds ratio between indigenous (indigenous) and non-indigenous (non-indigenous) | 1.07 (CI: 1.02, 1.12) |
lbw: odds change of non-indigenous (non-indigenous) | 1 (CI: 1, 1) |
lbw: odds change of indigenous (indigenous) | 1.07 (CI: 1.02, 1.12) |
bw: difference effect between dry season (30) and wet season (0) | -6.391 (CI: -11.764, -0.169); P(diff > 0) = 0.013 |
bw: effect of wet season (0) | 3.519 (CI: 0.061, 6.802); P(diff > 0) = 0.984 |
bw: effect of dry season (30) | -2.872 (CI: -5.985, 0.043); P(diff > 0) = 0.03 |
lbw: odds ratio between dry season (30) and wet season (0) | 1.039 (CI: 0.991, 1.09); P(diff > 0) = 0.939 |
lbw: odds change of wet season (0) | 0.98 (CI: 0.951, 1.008); P(diff > 0) = 0.081 |
lbw: odds change of dry season (30) | 1.019 (CI: 0.99, 1.05); P(diff > 0) = 0.896 |
bw: difference effect between rising season (39) and wet season (5) | -4.735 (CI: -10.728, 0.175); P(diff > 0) = 0.039 |
bw: effect of wet season (5) | 3.676 (CI: 0.05, 7.356); P(diff > 0) = 0.98 |
bw: effect of rising season (39) | -1.06 (CI: -4.123, 1.658); P(diff > 0) = 0.226 |
lbw: odds ratio between rising season (39) and wet season (5) | 1.018 (CI: 0.974, 1.068); P(diff > 0) = 0.771 |
lbw: odds change of wet season (5) | 0.984 (CI: 0.958, 1.011); P(diff > 0) = 0.131 |
lbw: odds change of rising season (39) | 1.002 (CI: 0.974, 1.031); P(diff > 0) = 0.546 |
bw: difference effect between 2016 (700) and 2006 (167) | -44.11 (CI: -55.09, -34.18) |
bw: effect of 2006 (167) | 28.85 (CI: 20.55, 38.34) |
bw: effect of 2016 (700) | -15.26 (CI: -19.95, -11.14) |
lbw: odds ratio between 2016 (700) and 2006 (167) | 1.55 (CI: 1.37, 1.77) |
lbw: odds change of 2006 (167) | 0.71 (CI: 0.62, 0.8) |
lbw: odds change of 2016 (700) | 1.09 (CI: 1.04, 1.14) |
bw: difference effect between Carauari (130100) and Envira (130150) | 213.47 (CI: 193.35, 234.08) |
bw: effect of Envira (130150) | -87.44 (CI: -103.98, -70.54) |
bw: effect of Carauari (130100) | 126.04 (CI: 108.25, 143.7) |
lbw: odds ratio between Carauari (130100) and Envira (130150) | 0.61 (CI: 0.52, 0.72) |
lbw: odds change of Envira (130150) | 1.18 (CI: 1.04, 1.34) |
lbw: odds change of Carauari (130100) | 0.72 (CI: 0.63, 0.81) |
Write summary of the data and model
readr::write_csv(as.data.frame(data_summary),
file.path(path_summarised, "summary-full-models.csv"))
Time to execute the task
Only useful when executed with Rscript
.
proc.time()
#> user system elapsed
#> 32.868 1.640 34.485