R/data_merge.R

Defines functions makedm

makedm<-function(db,survey,choices,choiceslabel,pays){
  dm<-db %>%
    group_by_at("admin1") %>%
    summarise(
      groupes_presents_1label=select_percents(groupes_presents,1,.,survey,choices,"label",choiceslabel),
      groupes_presents_1percent=select_percents(groupes_presents,1,.,survey,choices,"percent",choiceslabel),
      groupes_presents_2label=select_percents(groupes_presents,2,.,survey,choices,"label",choiceslabel),
      groupes_presents_2percent=select_percents(groupes_presents,2,.,survey,choices,"percent",choiceslabel),
      groupes_presents_3label=select_percents(groupes_presents,3,.,survey,choices,"label",choiceslabel),
      groupes_presents_3percent=select_percents(groupes_presents,3,.,survey,choices,"percent",choiceslabel),
      groupes_presents_4label=select_percents(groupes_presents,4,.,survey,choices,"label",choiceslabel),
      groupes_presents_4percent=select_percents(groupes_presents,4,.,survey,choices,"percent",choiceslabel),
      groupes_presents_5label=select_percents(groupes_presents,5,.,survey,choices,"label",choiceslabel),
      groupes_presents_5percent=select_percents(groupes_presents,5,.,survey,choices,"percent",choiceslabel),
      pdi_raison_1label=select_percents(pdi_raison,1,.,survey,choices,"label",choiceslabel),
      pdi_raison_1percent=select_percents(pdi_raison,1,.,survey,choices,"percent",choiceslabel),
      pdi_raison_2label=select_percents(pdi_raison,2,.,survey,choices,"label",choiceslabel),
      pdi_raison_2percent=select_percents(pdi_raison,2,.,survey,choices,"percent",choiceslabel),
      pdi_raison_3label=select_percents(pdi_raison,3,.,survey,choices,"label",choiceslabel),
      pdi_raison_3percent=select_percents(pdi_raison,3,.,survey,choices,"percent",choiceslabel),
      reste_raison_1label=select_percents(reste_raison,1,.,survey,choices,"label",choiceslabel),
      reste_raison_1percent=select_percents(reste_raison,1,.,survey,choices,"percent",choiceslabel),
      reste_raison_2label=select_percents(reste_raison,2,.,survey,choices,"label",choiceslabel),
      reste_raison_2percent=select_percents(reste_raison,2,.,survey,choices,"percent",choiceslabel),
      reste_raison_3label=select_percents(reste_raison,3,.,survey,choices,"label",choiceslabel),
      reste_raison_3percent=select_percents(reste_raison,3,.,survey,choices,"percent",choiceslabel),
      nourriture_source_1label=select_percents(nourriture_source,1,.,survey,choices,"label",choiceslabel),
      nourriture_source_1percent=select_percents(nourriture_source,1,.,survey,choices,"percent",choiceslabel),
      nourriture_source_2label=select_percents(nourriture_source,2,.,survey,choices,"label",choiceslabel),
      nourriture_source_2percent=select_percents(nourriture_source,2,.,survey,choices,"percent",choiceslabel),
      nourriture_source_3label=select_percents(nourriture_source,3,.,survey,choices,"label",choiceslabel),
      nourriture_source_3percent=select_percents(nourriture_source,3,.,survey,choices,"percent",choiceslabel),
      strat_survie_1label=select_percents(strat_survie,1,.,survey,choices,"label",choiceslabel),
      strat_survie_1percent=select_percents(strat_survie,1,.,survey,choices,"percent",choiceslabel),
      strat_survie_2label=select_percents(strat_survie,2,.,survey,choices,"label",choiceslabel),
      strat_survie_2percent=select_percents(strat_survie,2,.,survey,choices,"percent",choiceslabel),
      strat_survie_3label=select_percents(strat_survie,3,.,survey,choices,"label",choiceslabel),
      strat_survie_3percent=select_percents(strat_survie,3,.,survey,choices,"percent",choiceslabel),
      marche_maintenant_oui=percent_response(marche_maintenant,.,"oui"),
      marche_maintenant_non=percent_response(marche_maintenant,.,"non"),
      marche_maintenant_pie= paste0(marche_maintenant_oui,"+",marche_maintenant_non),
      pas_nourriture_raison_1label=select_percents(pas_nourriture_raison,1,.,survey,choices,"label",choiceslabel),
      pas_nourriture_raison_1percent=select_percents(pas_nourriture_raison,1,.,survey,choices,"percent",choiceslabel),
      pas_nourriture_raison_2label=select_percents(pas_nourriture_raison,2,.,survey,choices,"label",choiceslabel),
      pas_nourriture_raison_2percent=select_percents(pas_nourriture_raison,2,.,survey,choices,"percent",choiceslabel),
      marche_raison_1label=select_percents(marche_raison,1,.,survey,choices,"label",choiceslabel),
      marche_raison_1percent=select_percents(marche_raison,1,.,survey,choices,"percent",choiceslabel),
      marche_raison_2label=select_percents(marche_raison,2,.,survey,choices,"label",choiceslabel),
      marche_raison_2percent=select_percents(marche_raison,2,.,survey,choices,"percent",choiceslabel),
      distr_nourriture_oui=percent_response(distr_nourriture,.,"oui"),
      distr_nourriture_non=percent_response(distr_nourriture,.,"non"),
      distr_nourriture_autre=100-(distr_nourriture_oui+distr_nourriture_non),
      distr_nourriture_pie=paste0(distr_nourriture_oui,"+",distr_nourriture_non,"+",distr_nourriture_autre),
      cereal_prix_augmente_oui=percent_response(cereal_prix_augmente,.,"oui"),
      cereal_prix_augmente_non=percent_response(cereal_prix_augmente,.,"non"),
      cereal_prix_augmente_autre=100-(cereal_prix_augmente_oui+cereal_prix_augmente_non),
      cereal_prix_augmente_pie=paste0(cereal_prix_augmente_oui,"+",cereal_prix_augmente_non,"+",cereal_prix_augmente_autre),
      moyens_existence_obstacle_non=percent_response(moyens_existence_obstacle,.,"non"),
      revenu_source_1label=select_percents(revenu_source,1,.,survey,choices,"label",choiceslabel),
      revenu_source_1percent=select_percents(revenu_source,1,.,survey,choices,"percent",choiceslabel),
      revenu_source_2label=select_percents(revenu_source,2,.,survey,choices,"label",choiceslabel),
      revenu_source_2percent=select_percents(revenu_source,2,.,survey,choices,"percent",choiceslabel),
      revenu_source_3label=select_percents(revenu_source,3,.,survey,choices,"label",choiceslabel),
      revenu_source_3percent=select_percents(revenu_source,3,.,survey,choices,"percent",choiceslabel),
      moyens_existence_obstacle_raison_1label=select_percents(moyens_existence_obstacle_raison,1,.,survey,choices,"label",choiceslabel),
      moyens_existence_obstacle_raison_1percent=select_percents(moyens_existence_obstacle_raison,1,.,survey,choices,"percent",choiceslabel),
      moyens_existence_obstacle_raison_2label=select_percents(moyens_existence_obstacle_raison,2,.,survey,choices,"label",choiceslabel),
      moyens_existence_obstacle_raison_2percent=select_percents(moyens_existence_obstacle_raison,2,.,survey,choices,"percent",choiceslabel),
      moyens_existence_obstacle_raison_3label=select_percents(moyens_existence_obstacle_raison,3,.,survey,choices,"label",choiceslabel),
      moyens_existence_obstacle_raison_3percent=select_percents(moyens_existence_obstacle_raison,3,.,survey,choices,"percent",choiceslabel),
      activites_actuelles_non_1label=select_percents(activites_actuelles_non,1,.,survey,choices,"label",choiceslabel),
      activites_actuelles_non_1percent=select_percents(activites_actuelles_non,1,.,survey,choices,"percent",choiceslabel),
      activites_actuelles_non_2label=select_percents(activites_actuelles_non,2,.,survey,choices,"label",choiceslabel),
      activites_actuelles_non_2percent=select_percents(activites_actuelles_non,2,.,survey,choices,"percent",choiceslabel),
      activites_actuelles_non_3label=select_percents(activites_actuelles_non,3,.,survey,choices,"label",choiceslabel),
      activites_actuelles_non_3percent=select_percents(activites_actuelles_non,3,.,survey,choices,"percent",choiceslabel),
      sante_maintenant_non=percent_response(sante_maintenant,.,"non"),
      sante_maintenant_raison_1label=select_percents(sante_maintenant_raison,1,.,survey,choices,"label",choiceslabel),
      sante_maintenant_raison_1percent=select_percents(sante_maintenant_raison,1,.,survey,choices,"percent",choiceslabel),
      sante_maintenant_raison_2label=select_percents(sante_maintenant_raison,2,.,survey,choices,"label",choiceslabel),
      sante_maintenant_raison_2percent=select_percents(sante_maintenant_raison,2,.,survey,choices,"percent",choiceslabel),
      sante_maintenant_raison_3label=select_percents(sante_maintenant_raison,3,.,survey,choices,"label",choiceslabel),
      sante_maintenant_raison_3percent=select_percents(sante_maintenant_raison,3,.,survey,choices,"percent",choiceslabel),
      #
      services_sante_1label=if(pays=="mali"){
        select_percents(services_sante_mali,1,.,survey,choices,"label",choiceslabel)
      } else if(pays=="niger"){
        select_percents(services_sante_niger,1,.,survey,choices,"label",choiceslabel)
      } else {
        select_percents(services_sante_burkina,1,.,survey,choices,"label",choiceslabel)
      },
      services_sante_1percent=if(pays=="mali"){
        select_percents(services_sante_mali,1,.,survey,choices,"percent",choiceslabel)
      } else if(pays=="niger"){
        select_percents(services_sante_niger,1,.,survey,choices,"percent",choiceslabel)
      } else {
        select_percents(services_sante_burkina,1,.,survey,choices,"percent",choiceslabel)
      },
      services_sante_2label=if(pays=="mali"){
        select_percents(services_sante_mali,2,.,survey,choices,"label",choiceslabel)
      } else if(pays=="niger"){
        select_percents(services_sante_niger,2,.,survey,choices,"label",choiceslabel)
      } else {
        select_percents(services_sante_burkina,2,.,survey,choices,"label",choiceslabel)
      },
      services_sante_2percent=if(pays=="mali"){
        select_percents(services_sante_mali,2,.,survey,choices,"percent",choiceslabel)
      } else if(pays=="niger"){
        select_percents(services_sante_niger,2,.,survey,choices,"percent",choiceslabel)
      } else {
        select_percents(services_sante_burkina,2,.,survey,choices,"percent",choiceslabel)
      },
      services_sante_3label=if(pays=="mali"){
        select_percents(services_sante_mali,3,.,survey,choices,"label",choiceslabel)
      } else if(pays=="niger"){
        select_percents(services_sante_niger,3,.,survey,choices,"label",choiceslabel)
      } else {
        select_percents(services_sante_burkina,3,.,survey,choices,"label",choiceslabel)
      },
      services_sante_3percent=if(pays=="mali"){
        select_percents(services_sante_mali,3,.,survey,choices,"percent",choiceslabel)
      } else if(pays=="niger"){
        select_percents(services_sante_niger,3,.,survey,choices,"percent",choiceslabel)
      } else {
        select_percents(services_sante_burkina,3,.,survey,choices,"percent",choiceslabel)
      },
      sante_urgence_oui=percent_response(sante_urgence,.,"oui"),
      sante_urgence_non=percent_response(sante_urgence,.,"non"),
      sante_urgence_pie=paste0(sante_urgence_oui,"+",sante_urgence_non),
      probleme_sante_1label=select_percents(probleme_sante,1,.,survey,choices,"label",choiceslabel),
      probleme_sante_1percent=select_percents(probleme_sante,1,.,survey,choices,"percent",choiceslabel),
      probleme_sante_2label=select_percents(probleme_sante,2,.,survey,choices,"label",choiceslabel),
      probleme_sante_2percent=select_percents(probleme_sante,2,.,survey,choices,"percent",choiceslabel),
      probleme_sante_3label=select_percents(probleme_sante,3,.,survey,choices,"label",choiceslabel),
      probleme_sante_3percent=select_percents(probleme_sante,3,.,survey,choices,"percent",choiceslabel),
      nutri_oui=percent_response(nutri,.,"oui"),
      nutri_programme_1label=select_percents(nutri_programme,1,.,survey,choices,"label",choiceslabel),
      nutri_programme_1percent=select_percents(nutri_programme,1,.,survey,choices,"percent",choiceslabel),
      nutri_programme_2label=select_percents(nutri_programme,2,.,survey,choices,"label",choiceslabel),
      nutri_programme_2percent=select_percents(nutri_programme,2,.,survey,choices,"percent",choiceslabel),
      nutri_programme_3label=select_percents(nutri_programme,3,.,survey,choices,"label",choiceslabel),
      nutri_programme_3percent=select_percents(nutri_programme,3,.,survey,choices,"percent",choiceslabel),
      nutri_programme_4label=select_percents(nutri_programme,4,.,survey,choices,"label",choiceslabel),
      nutri_programme_4percent=select_percents(nutri_programme,4,.,survey,choices,"percent",choiceslabel),
      eau_debit_non=percent_response(eau_debit,.,"non"),
      eau_protection_oui=percent_response(eau_protection,.,"oui"),
      eau_protection_non=percent_response(eau_protection,.,"non"),
      eau_protection_autre=100-(eau_protection_oui+eau_protection_non),
      eau_protection_pie=paste0(eau_protection_oui,"+",eau_protection_non,"+",eau_protection_autre),
      eau_maintenant_distance_1label=select_percents(eau_maintenant_distance,1,.,survey,choices,"label",choiceslabel),
      eau_maintenant_distance_1percent=select_percents(eau_maintenant_distance,1,.,survey,choices,"percent",choiceslabel),
      eau_maintenant_distance_2label=select_percents(eau_maintenant_distance,2,.,survey,choices,"label",choiceslabel),
      eau_maintenant_distance_2percent=select_percents(eau_maintenant_distance,2,.,survey,choices,"percent",choiceslabel),
      eau_maintenant_distance_3label=select_percents(eau_maintenant_distance,3,.,survey,choices,"label",choiceslabel),
      eau_maintenant_distance_3percent=select_percents(eau_maintenant_distance,3,.,survey,choices,"percent",choiceslabel),
      besoin_endroit_latrine_oui=percent_response(besoin_endroit,.,"latrine_public")+percent_response(besoin_endroit,.,"latrine_privee")+percent_response(besoin_endroit,.,"latrine_partage"),
      besoin_endroit_latrine_non=percent_response(besoin_endroit,.,"dal_zone_precise")+percent_response(besoin_endroit,.,"dal_zone_imprecise")+percent_response(besoin_endroit,.,"dal_cours_eau"),
      besoin_endroit_latrine_autre=100-(besoin_endroit_latrine_oui+besoin_endroit_latrine_non),
      besoin_endroit_latrine_pie=paste0(besoin_endroit_latrine_oui,"+",besoin_endroit_latrine_non,"+",besoin_endroit_latrine_autre),
      eau_seulement=percent_response(lavage_mains,.,"eau_seulement"),
      savon=percent_response(lavage_mains,.,"savon"),
      cendre=percent_response(lavage_mains,.,"cendre"),
      sable=percent_response(lavage_mains,.,"sable"),
      lavage_autre=100-(percent_response(lavage_mains,.,"eau_seulement")+percent_response(lavage_mains,.,"savon")+percent_response(lavage_mains,.,"cendre")+percent_response(lavage_mains,.,"sable")),
      procuration_savon_oui=percent_response(procuration_savon,.,"oui"),
      procuration_savon_non=percent_response(procuration_savon,.,"non"),
      procuration_savon_pie=paste0(procuration_savon_oui,"+",procuration_savon_non),
      pdi_abris_pas_adequat=percent_response(pdi_abris_adequat,.,"non"),
      abris_dommages_oui=percent_response(abris_dommages,.,"oui"),
      abris_destruction_raison_1label=select_percents(abris_destruction_raison,1,.,survey,choices,"label",choiceslabel),
      abris_destruction_raison_1percent=select_percents(abris_destruction_raison,1,.,survey,choices,"percent",choiceslabel),
      abris_destruction_raison_2label=select_percents(abris_destruction_raison,2,.,survey,choices,"label",choiceslabel),
      abris_destruction_raison_2percent=select_percents(abris_destruction_raison,2,.,survey,choices,"percent",choiceslabel),
      abris_destruction_raison_3label=select_percents(abris_destruction_raison,3,.,survey,choices,"label",choiceslabel),
      abris_destruction_raison_3percent=select_percents(abris_destruction_raison,3,.,survey,choices,"percent",choiceslabel),
      besoin_bna_1label=select_percents(besoin_bna,1,.,survey,choices,"label",choiceslabel),
      besoin_bna_1percent=select_percents(besoin_bna,1,.,survey,choices,"percent",choiceslabel),
      besoin_bna_2label=select_percents(besoin_bna,2,.,survey,choices,"label",choiceslabel),
      besoin_bna_2percent=select_percents(besoin_bna,2,.,survey,choices,"percent",choiceslabel),
      besoin_bna_3label=select_percents(besoin_bna,3,.,survey,choices,"label",choiceslabel),
      besoin_bna_3percent=select_percents(besoin_bna,3,.,survey,choices,"percent",choiceslabel),
      besoin_bna_4label=select_percents(besoin_bna,4,.,survey,choices,"label",choiceslabel),
      besoin_bna_4percent=select_percents(besoin_bna,4,.,survey,choices,"percent",choiceslabel),
      besoin_bna_5label=select_percents(besoin_bna,5,.,survey,choices,"label",choiceslabel),
      besoin_bna_5percent=select_percents(besoin_bna,5,.,survey,choices,"percent",choiceslabel),
      edu_maintenant_non=percent_response(edu_maintenant,.,"oui"),
      education_type_1label=select_percents(education_type,1,.,survey,choices,"label",choiceslabel),
      education_type_1percent=select_percents(education_type,1,.,survey,choices,"percent",choiceslabel),
      edu_raisons_1label=select_percents(edu_raisons,1,.,survey,choices,"label",choiceslabel),
      edu_raisons_1percent=select_percents(edu_raisons,1,.,survey,choices,"percent",choiceslabel),
      edu_raisons_2label=select_percents(edu_raisons,2,.,survey,choices,"label",choiceslabel),
      edu_raisons_2percent=select_percents(edu_raisons,2,.,survey,choices,"percent",choiceslabel),
      edu_raisons_3label=select_percents(edu_raisons,3,.,survey,choices,"label",choiceslabel),
      edu_raisons_3percent=select_percents(edu_raisons,3,.,survey,choices,"percent",choiceslabel),
      edu_strategie_1label=select_percents(edu_strategie,1,.,survey,choices,"label",choiceslabel),
      edu_strategie_1percent=select_percents(edu_strategie,1,.,survey,choices,"percent",choiceslabel),
      edu_strategie_2label=select_percents(edu_strategie,2,.,survey,choices,"label",choiceslabel),
      edu_strategie_2percent=select_percents(edu_strategie,2,.,survey,choices,"percent",choiceslabel),
      edu_strategie_3label=select_percents(edu_strategie,3,.,survey,choices,"label",choiceslabel),
      edu_strategie_3percent=select_percents(edu_strategie,3,.,survey,choices,"percent",choiceslabel),
      edu_strategie_4label=select_percents(edu_strategie,4,.,survey,choices,"label",choiceslabel),
      edu_strategie_4percent=select_percents(edu_strategie,4,.,survey,choices,"percent",choiceslabel),
      edu_occupation_1label=select_percents(edu_occupation,1,.,survey,choices,"label",choiceslabel),
      edu_occupation_1percent=select_percents(edu_occupation,1,.,survey,choices,"percent",choiceslabel),
      edu_occupation_2label=select_percents(edu_occupation,2,.,survey,choices,"label",choiceslabel),
      edu_occupation_2percent=select_percents(edu_occupation,2,.,survey,choices,"percent",choiceslabel),
      edu_occupation_3label=select_percents(edu_occupation,3,.,survey,choices,"label",choiceslabel),
      edu_occupation_3percent=select_percents(edu_occupation,3,.,survey,choices,"percent",choiceslabel),
      prot_maintenant_non=percent_response(prot_maintenant,.,"non"),
      population_inquietudes_1label=select_percents(population_inquietudes,1,.,survey,choices,"label",choiceslabel),
      population_inquietudes_1percent=select_percents(population_inquietudes,1,.,survey,choices,"percent",choiceslabel),
      population_inquietudes_2label=select_percents(population_inquietudes,2,.,survey,choices,"label",choiceslabel),
      population_inquietudes_2percent=select_percents(population_inquietudes,2,.,survey,choices,"percent",choiceslabel),
      population_inquietudes_3label=select_percents(population_inquietudes,3,.,survey,choices,"label",choiceslabel),
      population_inquietudes_3percent=select_percents(population_inquietudes,3,.,survey,choices,"percent",choiceslabel),
      population_inquietudes_4label=select_percents(population_inquietudes,4,.,survey,choices,"label",choiceslabel),
      population_inquietudes_4percent=select_percents(population_inquietudes,4,.,survey,choices,"percent",choiceslabel),
      prot_incidence_oui=percent_response(prot_incidence,.,"oui"),
      prot_incidence_non=percent_response(prot_incidence,.,"non"),
      prot_incidence_autre=100-(prot_incidence_oui+prot_incidence_non),
      prot_incidence_pie=paste0(prot_incidence_oui,"+",prot_incidence_non,"+",prot_incidence_autre),
      comm_relations_bonne=percent_response(comm_relations,.,"bonne"),
      comm_relations_fragile=percent_response(comm_relations,.,"fragile"),
      comm_relations_neutre=percent_response(comm_relations,.,"neutre"),
      comm_relations_autre=100-(comm_relations_bonne+comm_relations_fragile+comm_relations_neutre),
      comm_relations_pie=paste0(comm_relations_bonne,"+",comm_relations_fragile,"+",comm_relations_neutre,"+",comm_relations_autre),
      info_difficulte_oui=percent_response(info_difficulte,.,"oui"),
      info_source_1label=select_percents(info_source,1,.,survey,choices,"label",choiceslabel),
      info_source_1percent=select_percents(info_source,1,.,survey,choices,"percent",choiceslabel),
      info_source_2label=select_percents(info_source,2,.,survey,choices,"label",choiceslabel),
      info_source_2percent=select_percents(info_source,2,.,survey,choices,"percent",choiceslabel),
      info_source_qui_1label=select_percents(info_source_qui,1,.,survey,choices,"label",choiceslabel),
      info_source_qui_1percent=select_percents(info_source_qui,1,.,survey,choices,"percent",choiceslabel),
      info_source_qui_2label=select_percents(info_source_qui,2,.,survey,choices,"label",choiceslabel),
      info_source_qui_2percent=select_percents(info_source_qui,2,.,survey,choices,"percent",choiceslabel),
      info_utile_1label=select_percents(info_utile,1,.,survey,choices,"label",choiceslabel),
      info_utile_1percent=select_percents(info_utile,1,.,survey,choices,"percent",choiceslabel),
      info_utile_2label=select_percents(info_utile,2,.,survey,choices,"label",choiceslabel),
      info_utile_2percent=select_percents(info_utile,2,.,survey,choices,"percent",choiceslabel),
      reseau_mobile_oui=percent_response(reseau_mobile,.,"oui"),
      reseau_mobile_non=percent_response(reseau_mobile,.,"non"),
      reseau_mobile_pie=paste0(reseau_mobile_oui,"+",reseau_mobile_non),
      assistance_oui=percent_response(assistance,.,"oui"),
      assistance_non=percent_response(assistance,.,"non"),
      assistance_autre=100-(assistance_oui+assistance_non),
      assistance_pie=paste0(assistance_oui,"+",assistance_non,"+",assistance_autre),
      raison_insatisfaction_1label=select_percents(raison_insatisfaction,1,.,survey,choices,"label",choiceslabel),
      raison_insatisfaction_1percent=select_percents(raison_insatisfaction,1,.,survey,choices,"percent",choiceslabel),
      raison_insatisfaction_2label=select_percents(raison_insatisfaction,2,.,survey,choices,"label",choiceslabel),
      raison_insatisfaction_2percent=select_percents(raison_insatisfaction,2,.,survey,choices,"percent",choiceslabel),
      raison_insatisfaction_3label=select_percents(raison_insatisfaction,3,.,survey,choices,"label",choiceslabel),
      raison_insatisfaction_3percent=select_percents(raison_insatisfaction,3,.,survey,choices,"percent",choiceslabel)
    ) 
  
  dm<-lapply(dm, function(x) gsub("(\\+0)$", "", x)) %>% as.data.frame()
  return(dm)
  
}  
hedibmustapha/HSM3frontieres documentation built on May 13, 2021, 3:03 p.m.