Bonjour,
Afin d’étudier le FDep, je dois reconstruire le lieu de résidence des bénéficiaires.
Après quelques recherches en plus de la fiche dédiée sur le site du HDH, j’ai trouvé 2 scripts (R et SAS) mis à disposition par la DREES et l’ARS IdF que j’ai combiné pour obtenir ce code commune. Les voici :
https://git.drees.fr/drees_code_public/etudes/er1249/-/blob/e4841338ff8918509b14c73b2429e2dc73290998/R/F04_Code_commune_patient.R
print("Constitution du code commune")
tab[,BEN_RES_DPT := as.character(BEN_RES_DPT)]
tab[,BEN_RES_COM := as.character(BEN_RES_COM)]
# Code commune sur 3 caractères
tab[nchar(BEN_RES_COM) == 1,BEN_RES_COM := paste0("00",BEN_RES_COM)]
tab[nchar(BEN_RES_COM) == 2,BEN_RES_COM := paste0("0",BEN_RES_COM)]
# Code département sur 3 caractères
tab[nchar(BEN_RES_DPT) == 1,BEN_RES_DPT := paste0("00",BEN_RES_DPT)]
tab[nchar(BEN_RES_DPT) == 2,BEN_RES_DPT := paste0("0",BEN_RES_DPT)]
# Département de l'organisme d'affiliation
tab[,DEP_ORG_AFF := substr(ORG_AFF_BEN,4,6)]
# Code département manquant
tab[BEN_RES_DPT %in% c("000","099","999"),BEN_RES_DPT := DEP_ORG_AFF]
# Département SLM étudiantes
tab[substr(ORG_AFF_BEN,7,9) == "617",BEN_RES_DPT := DEP_ORG_AFF]
# Code département Corse
tab[BEN_RES_DPT == "209", BEN_RES_DPT := "020"]
# Code département DROM
tab[BEN_RES_DPT %in% c("971","972","973","974","976"), BEN_RES_DPT := "097"]
# Code commune du patient
tab[,depcom_ben := paste0(substr(BEN_RES_DPT,2,3),BEN_RES_COM)]
https://gitlab.com/healthdatahub/boas/ars/depistage-biologique-insuffisance-renale-chronique/-/blob/main/Prev_IRC.sas?ref_type=heads
If BEN_RES_DPT in('080') AND BEN_RES_COM='810' AND SUBSTR(ORG_AFF_BEN,1,3) in('01C') AND SUBSTR(ORG_AFF_BEN,1,5) not in('01C97') then BEN_RES_DPT="0"||SUBSTR(ORG_AFF_BEN,4,2) ;
If BEN_RES_DPT in('080') AND BEN_RES_COM='810' AND SUBSTR(ORG_AFF_BEN,1,3) in('01C') AND SUBSTR(ORG_AFF_BEN,1,5) in('01C97') then BEN_RES_DPT=SUBSTR(ORG_AFF_BEN,4,3) ;
* Anomalie Corse;
If BEN_RES_DPT in('037') AND SUBSTR(ORG_AFF_BEN,1,6) in('01C201') then BEN_RES_DPT='020' ;
If BEN_RES_DPT in('038') AND SUBSTR(ORG_AFF_BEN,1,6) in('01C202') then BEN_RES_DPT='020' ;
Cependant, je suis troublé par certaines règles : par exemple dans le Code Géographique de l’INSEE, le département 99 correspondent à l’étranger. Il est par ailleurs difficile de distinguer Haute-Corse(2A) et Corse du Sud (2B), et j’ai l’impression que les valeurs des COM (DOM/TOM) ne sont pas gérés correctement.
Je ne suis pas très a l’aise avec le fait de prendre les 2 derniers caractères du numéro de caisse de ORG_AFF_BEN car je ne trouve pas assez d’information sur ce code qui parfois semble correspondre à un département et d’autre fois être tronqué (à nouveau pour les COM).
Pouvez vous me valider la méthodologie ?
D’avanc emerci.
Claude