df_anemia_ready <-
df_anemia %>%
janitor:: clean_names () %>%
rename (
history = does_the_child_have_a_history_of_the_following_check_all_that_applies,
history_other = other_medical_history_specify,
eat_iron_veges =
does_the_child_eat_adequate_iron_rich_foods_regularly_e_g_meat_beans_leafy_vegetables,
exbf_4mths_older_chn = was_exclusive_breastfeeding_done_for_at_least_4_months_in_older_children,
bld_loss_3mths = recent_blood_loss_past_3_months_before_admission,
transfusion_3mths = recent_blood_transfusion_past_3_months_before_admission,
deworm_6mths = deworming_within_the_past_6_months_non_applicable_for_children_under_1_year,
iron_supp_3mths = iron_supplementation_within_the_past_3_months,
adm_clinical_features = clinical_features_at_admission_select_all_that_apply,
blood_film_comment = blood_film_comment_check_all_that_applies,
anemia_type = type_of_anemia_diagnosed_if_applicable,
txn_required = was_blood_transfusion_required,
picu_required = was_patient_admitted_to_picu,
dura_hosp_stay = duration_of_hospital_stay_days,
missed_vac_opportunity = in_children_with_missed_immunizations_did_the_child_miss_opportunities_for_immunization_during_previous_admissions_or_opd_consultations,
missed_vac_reason = if_missed_vaccination_give_reason_for_incomplete_vaccination_status,
missed_vac_opportunity2 = for_children_who_have_missed_some_vaccinations_did_the_child_also_miss_opportunities_for_immunization_during_previous_admissions,
hb = hb_g_dl) %>%
mutate (
age_days = interval (
date_of_birth, date_of_admission) %/% days (1 ),
age_months = interval (
date_of_birth, date_of_admission) %/% months (1 ),
age_years = interval (
date_of_birth, date_of_admission) %/% years (1 ),
across (
c (gender, maternal_education, paternal_education, residence,
iron_supp_3mths, exbf_4mths_older_chn, transfusion_3mths,
picu_required, txn_required, rdt),
~ factor (.)),
family_income = factor (
family_income,
levels = c ("Low" , "Middle" , "High" )),
eat_iron_veges = factor (
eat_iron_veges,
levels = c ("No" , "Yes" )),
bld_loss_3mths_2 = case_when (
bld_loss_3mths == "None" ~ "No" ,
TRUE ~ "Yes" ) %>% factor (),
mal_prev_use = case_when (
malaria_prevention_measures == "None" ~ "No" ,
TRUE ~ "Yes" ) %>% factor (),
malaria_prevention_measures = toupper (
malaria_prevention_measures),
mal_prev_itn = case_when (
str_detect (malaria_prevention_measures, "ITN" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
mal_prev_spray_coil = case_when (
str_detect (malaria_prevention_measures, "COIL" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
mal_prev_clothes = case_when (
str_detect (malaria_prevention_measures, "CLOTH" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
mal_prev_repellent = case_when (
str_detect (malaria_prevention_measures, "REPELLANT" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
mps_positive = case_when (
malaria_parasites == "Positive" ~ "Yes" ,
malaria_parasites == "Negative" ~ "No" ) %>%
factor (),
rdt_positive = case_when (
rdt == "Positive" ~ "Yes" ,
rdt == "Negative" ~ "No" ) %>%
factor (),
deworm_6mths_2 = factor (
deworm_6mths, levels = c ("No" , "Yes" )),
immun_status = case_when (
immunization_status == "Fully vaccinated for age" ~ "Full" ,
immunization_status == "Partially vaccinated for age" ~
"Partial" ,
immunization_status == "Not vaccinated" ~ "None" ) %>%
factor (levels = c ("Full" , "Partial" , "None" )),
rbc_transfused = case_when (
txn_required == "Yes" ~ "Yes" , TRUE ~ "No" ) %>% factor (),
died = case_when (
outcome_at_discharge == "Died" ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
anemia_cat = case_when (
(age_years >= 15 & gender == "Male" & hb < 8 ) ~ "Severe" ,
(age_years >= 15 & gender == "Male" & hb < 11 ) ~ "Moderate" ,
(age_years >= 15 & gender == "Male" & hb < 13 ) ~ "Mild" ,
(age_years >= 15 & gender == "Male" ) ~ "None" ,
(age_years >= 15 & gender == "Female" & hb < 8 ) ~ "Severe" ,
(age_years >= 15 & gender == "Female" & hb < 11 ) ~ "Moderate" ,
(age_years >= 15 & gender == "Female" & hb < 12 ) ~ "Mild" ,
(age_years >= 15 & gender == "Female" ) ~ "None" ,
(age_years >= 12 & hb < 8 ) ~ "Severe" ,
(age_years >= 12 & hb < 11 ) ~ "Moderate" ,
(age_years >= 12 & hb < 12 ) ~ "Mild" ,
(age_years >= 12 ) ~ "None" ,
(age_years >= 5 & hb < 8 ) ~ "Severe" ,
(age_years >= 5 & hb < 11 ) ~ "Moderate" ,
(age_years >= 5 & hb < 11.5 ) ~ "Mild" ,
(age_years >= 5 ) ~ "None" ,
(age_months >= 24 & hb < 7 ) ~ "Severe" ,
(age_months >= 24 & hb < 10 ) ~ "Moderate" ,
(age_months >= 24 & hb < 11 ) ~ "Mild" ,
(age_months >= 24 ) ~ "None" ,
(age_months >= 6 & hb < 7 ) ~ "Severe" ,
(age_months >= 6 & hb < 9.5 ) ~ "Moderate" ,
(age_months >= 6 & hb < 10.5 ) ~ "Mild" ,
(age_months >= 6 ) ~ "None" ,
(age_months >= 1 & hb < 7 ) ~ "Severe" ,
(age_months >= 1 & hb < 9 ) ~ "Moderate" ,
(age_months >= 1 & hb < 9.5 ) ~ "Mild" ,
(age_months >= 1 ) ~ "None" ) %>%
factor (levels = c ("None" , "Mild" , "Moderate" , "Severe" )),
anemia = case_when (
anemia_cat == "None" ~ "No" ,
anemia_cat %in% c ("Mild" , "Moderate" , "Severe" ) ~ "Yes" ) %>%
factor (),
mcv_cat = case_when (
age_years > 12 & mcv > 96 ~ "Macrocytic" ,
age_years > 12 & mcv >= 80 ~ "Normocytic" ,
age_years > 12 & mcv < 80 ~ "Microcytic" ,
age_years > 6 & mcv > 90 ~ "Macrocytic" ,
age_years > 6 & mcv >= 78 ~ "Normocytic" ,
age_years > 6 & mcv < 78 ~ "Microcytic" ,
age_years >= 2 & mcv > 86 ~ "Macrocytic" ,
age_years >= 2 & mcv >= 75 ~ "Normocytic" ,
age_years >= 2 & mcv < 75 ~ "Microcytic" ,
age_months >= 6 & mcv > 85 ~ "Macrocytic" ,
age_months >= 6 & mcv >= 73 ~ "Normocytic" ,
age_months >= 6 & mcv < 73 ~ "Microcytic" ) %>%
factor (levels = c ("Microcytic" , "Normocytic" , "Macrocytic" )),
rdw_cat = case_when (
(gender == "Male" & age_years > 12 & rdw_cv > 13.5 ) ~ "High" ,
(gender == "Male" & age_years > 12 & rdw_cv >= 10.9 ) ~ "Normal" ,
(gender == "Male" & age_years > 12 & rdw_cv < 10.9 ) ~ "Low" ,
(gender == "Female" & age_years > 12 & rdw_cv > 14.6 ) ~ "High" ,
(gender == "Female" & age_years > 12 & rdw_cv >= 11.9 ) ~
"Normal" ,
(gender == "Female" & age_years > 12 & rdw_cv < 11.9 ) ~ "Low" ,
age_years > 6 & rdw_cv > 13.8 ~ "High" ,
age_years > 6 & rdw_cv >= 11.9 ~ "Normal" ,
age_years > 6 & rdw_cv < 11.9 ~ "Low" ,
age_years >= 2 & rdw_cv > 14.6 ~ "High" ,
age_years >= 2 & rdw_cv >= 12.0 ~ "Normal" ,
age_years >= 2 & rdw_cv < 12.0 ~ "Low" ,
age_months >= 6 & rdw_cv > 15.6 ~ "High" ,
age_months >= 6 & rdw_cv >= 12.3 ~ "Normal" ,
age_months >= 6 & rdw_cv < 12.3 ~ "Low" ) %>%
factor (levels = c ("Low" , "Normal" , "High" )) %>%
fct_recode ("Normal" = "Low" ),
bld_film_done = case_when (
is.na (blood_film_comment) ~ "No" ,
TRUE ~ "Yes" ) %>% factor (),
bf_ida = case_when (
str_detect (
blood_film_comment, "Iron deficiency anemia" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
bf_scd = case_when (
str_detect (
blood_film_comment, "Sickle" ) ~ "Yes" ,
str_detect (blood_film_comment, "SCD" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
bf_infection = case_when (
str_detect (
blood_film_comment, "Infection" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
bf_liver = case_when (
str_detect (
blood_film_comment, "Liver" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
bf_renal = case_when (
str_detect (
blood_film_comment, "Renal" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
bf_malignancy = case_when (
str_detect (
blood_film_comment, "ALL" ) ~ "Yes" ,
str_detect (
blood_film_comment, "MALIGNANCY" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
bf_hemolytic = case_when (
str_detect (
blood_film_comment, "Hemolytic" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
bf_malaria = case_when (
str_detect (
blood_film_comment, "Malaria" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
bf_inflamation = case_when (
str_detect (
blood_film_comment, "INFLA" ) ~ "Yes" ,
TRUE ~ "No" ) %>% factor (),
ida = case_when (
bf_ida == "Yes" ~ "Yes" ,
(hb < 10 & rdw_cv > 15 & mcv_cat == "Microcytic" ) ~ "Yes" ,
TRUE ~ "No" ),
malaria = case_when (
rdt_positive == "Yes" ~ "Yes" ,
mps_positive == "Yes" ~ "Yes" ,
bf_malaria == "Yes" ~ "Yes" ,
TRUE ~ "No" ),
history = toupper (history),
blood_film_comment = toupper (blood_film_comment),
discharge_diagnosis_list = toupper (discharge_diagnosis_list),
discharge_diagnosis_upper = toupper (discharge_diagnosis_upper),
scd = case_when (
str_detect (history, "SICKLE CELL DISEASE" ) ~ "Yes" ,
str_detect (history, "SCD" ) ~ "Yes" ,
str_detect (history_other, "SICKLE CELL DISEASE" ) ~ "Yes" ,
str_detect (history_other, "SCD" ) ~ "Yes" ,
str_detect (blood_film_comment, "SICKLE CELL DISEASE" ) ~ "Yes" ,
str_detect (blood_film_comment, "SCD" ) ~ "Yes" ,
str_detect (discharge_diagnosis_list,
"SICKLE CELL DISEASE" ) ~ "Yes" ,
str_detect (discharge_diagnosis_list, "SCD" ) ~ "Yes" ,
str_detect (discharge_diagnosis_upper,
"SICKLE CELL DISEASE" ) ~ "Yes" ,
str_detect (discharge_diagnosis_upper, "SCD" ) ~ "Yes" ,
str_detect (anemia_type, "Sickle cell anemia" ) ~ "Yes" ,
TRUE ~ "No" ),
g6pd = case_when (
str_detect (discharge_diagnosis_list, "G6PD" ) ~ "Yes" ,
str_detect (discharge_diagnosis_upper, "G6PD" ) ~ "Yes" ,
str_detect (other_laboratory_findings, "G6PD" ) ~ "Yes" ,
str_detect (additional_comments, "G6PD" ) ~ "Yes" ,
TRUE ~ "No" ),
anemia_of_malig = case_when (
str_detect (blood_film_comment, "MALIGN" ) ~ "Yes" ,
TRUE ~ "No" ),
anemia_of_chr_dx = case_when (
str_detect (blood_film_comment, "CHRONIC" ) ~ "Yes" ,
TRUE ~ "No" ))%>%
select (! c (column_42, column_43, timestamp)) %>%
full_join (df_anemia_diag) %>%
mutate (
across (starts_with ("diag_" ), ~ ifelse (is.na (.x), "No" , .x)),
age_cat = case_when (
(age_months >= 3 & age_months <= 5 ) ~ "3 to 5 months" ,
(age_months >= 6 & age_months <= 23 ) ~ "6 to 23 months" ,
(age_months >= 24 & age_months <= 59 ) ~ "24 to 59 months" ,
(age_months >= 60 & age_months <= 143 ) ~ "5 to 11 years" ,
(age_months >= 144 & age_months <= 179 & gender == "Female" ) ~
"12 to 14 years(girls)" ,
(age_months >= 144 & age_months <= 179 & gender == "Male" ) ~
"12 to 14 years(boys)" ,
(age_months >= 180 & gender == "Female" ) ~
">= 15 years (girls)" ,
(age_months >= 180 & gender == "Male" ) ~
">= 15 years (boys)" ) %>%
factor (levels = c (
"3 to 5 months" , "6 to 23 months" , "24 to 59 months" ,
"5 to 11 years" , "12 to 14 years(girls)" ,
"12 to 14 years(boys)" ,">= 15 years (girls)" ,
">= 15 years (boys)" )))