knitr::opts_chunk$set(echo = FALSE,
                      warning = FALSE,
                      message = FALSE)

Medical costs

write("Export medical cost data", stderr())
kenya_cond <- is_kenya&!is.null(medical_cost_data[[1]])

# Initialise the list with all records
medical_cost_by_facility_data <- list('All' = medical_cost_data[[1]])
# Extract list of (unique) facilities from column `facility_code
facility_id_vector <- medical_cost_data[[1]]$facility_code
facility_ids <- unique(facility_id_vector[!is.na(facility_id_vector)])
# Generate a list of data sets filtered by facility
for ( fid in facility_ids ) {
  medical_cost_by_facility_data[[fid]] <- medical_cost_data[[1]] %>%
    dplyr::filter(facility_code == fid)
}
medical_cost_export_name <- "01a_timci_medical_cost_data"
if ( !is.null(medical_cost_data[[1]]) ) {
  fn <- timci::export_df2xlsx(medical_cost_by_facility_data,
                              cost_dir,
                              medical_cost_export_name)
  cat(paste0("* Raw medical cost data are exported in file ", medical_cost_export_name, ".xslx in the ", cost_dir, " folder"))
}
medical_cost_export_name <- "01b_timci_medical_cost_repeat1"

if (!is.null(medical_cost_data[[2]])) {
  fn <- timci::export_df2xlsx(medical_cost_data[[2]],
                              cost_dir,
                              medical_cost_export_name)
  cat(paste0("* Medical cost repeat data are exported in file ", medical_cost_export_name, ".xslx in the ", cost_dir, " folder"))
}
medical_cost_export_name <- "01b_timci_medical_cost_lab_and_imaging_staff"

# Retrieve the facility code from the main cost dataset
lab_imaging_staff_df <- medical_cost_data[[2]] %>%
  merge(medical_cost_data[[1]] %>%
          select(KEY,
                 date,
                 facility_code),
        by.x = "PARENT_KEY",
        by.y = "KEY",
        all.x = TRUE)
# Initialise the list with all records
lab_imaging_staff_by_facility_data <- list('All' = lab_imaging_staff_df)
# Extract list of (unique) facilities from column `facility_code
facility_id_vector <- lab_imaging_staff_df$facility_code
facility_ids <- unique(facility_id_vector[!is.na(facility_id_vector)])
# Generate a list of data sets filtered by facility
for ( fid in facility_ids ) {
  lab_imaging_staff_by_facility_data[[fid]] <- lab_imaging_staff_df %>%
    dplyr::filter(facility_code == fid)
}
fn <- timci::export_df2xlsx(lab_imaging_staff_by_facility_data,
                            cost_dir,
                            medical_cost_export_name)

cat(paste0("* Medical cost lab and imaging staff data are exported in file ",
           medical_cost_export_name,
           ".xslx in the ",
           cost_dir,
           " folder"))
medical_cost_export_name <- "01c_timci_medical_cost_health_staff"

# Retrieve the facility code from the main cost dataset
health_staff_df <- medical_cost_data[[3]] %>%
  merge(medical_cost_data[[1]] %>%
          select(KEY,
                 date,
                 facility_code),
        by.x = "PARENT_KEY",
        by.y = "KEY",
        all.x = TRUE)
# Initialise the list with all records
health_staff_by_facility_data <- list('All' = health_staff_df)
# Extract list of (unique) facilities from column `facility_code
facility_id_vector <- health_staff_df$facility_code
facility_ids <- unique(facility_id_vector[!is.na(facility_id_vector)])
# Generate a list of data sets filtered by facility
for ( fid in facility_ids ) {
  health_staff_by_facility_data[[fid]] <- health_staff_df %>%
    dplyr::filter(facility_code == fid)
}

fn <- timci::export_df2xlsx(health_staff_by_facility_data,
                            cost_dir,
                            medical_cost_export_name)
cat(paste0("* Medical cost health staff data are exported in file ", medical_cost_export_name, ".xslx in the ", cost_dir, " folder"))
medical_cost_export_name <- "01d_timci_medical_cost_non_health_staff"

if ( !is.null(medical_cost_data[[4]]) ) {

  # Retrieve the facility code from the main cost dataset
  medical_staff_df <- medical_cost_data[[4]] %>%
    merge(medical_cost_data[[1]] %>%
            select(KEY,
                   date,
                   facility_code),
          by.x = "PARENT_KEY",
          by.y = "KEY",
          all.x = TRUE)
  # Initialise the list with all records
  medical_staff_by_facility_data <- list('All' = medical_staff_df)
  # Extract list of (unique) facilities from column `facility_code
  facility_id_vector <- medical_staff_df$facility_code
  facility_ids <- unique(facility_id_vector[!is.na(facility_id_vector)])
  # Generate a list of data sets filtered by facility
  for ( fid in facility_ids ) {
    medical_staff_by_facility_data[[fid]] <- medical_staff_df %>%
      dplyr::filter(facility_code == fid)
  }

}

if (!is.null(medical_cost_data[[4]])) {
  fn <- timci::export_df2xlsx(medical_staff_by_facility_data,
                              cost_dir,
                              medical_cost_export_name)
  cat(paste0("* Medical cost non-health staff data are exported in file ", medical_cost_export_name, ".xslx in the ", cost_dir, " folder"))
}
medical_cost_export_name <- "01z_timci_medical_cost_audit"
i <- length(medical_cost_data)

if (!is.null(medical_cost_data[[i]])) {
  fn <- timci::export_df2xlsx(medical_cost_data[[i]],
                              cost_dir,
                              medical_cost_export_name)
  cat(paste0("* Medical cost audit log is exported in file ", medical_cost_export_name, ".xslx in the ", cost_dir, " folder"))
}


Thaliehln/timci documentation built on April 8, 2024, 3:38 p.m.