Extraction des délivrances de médicaments.
Source :R/extract_drug_dispenses.R
extract_drug_dispenses.Rd
Cette fonction permet d'extraire les délivrances de médicaments.
Les délivrances dont les dates EXE_SOI_DTD sont comprises
entre start_date et end_date (incluses) sont extraites.
Le décalage de remontée des données est pris en compte
en récupérant également les délivrances dont les dates
FLX_DIS_DTD sont comprises dans les dis_dtd_lag_months
mois suivant end_date.
Si atc_cod_starts_with est fourni, seules les délivrances
de médicaments dont le code ATC commence par l'un des
éléments de atc_cod_starts_with sont extraites. Dans le
cas contraire, les délivrances pour tous les codes
ATC sont extraites.
Si patients_ids est fourni, seules les délivrances
de médicaments pour les patients dont les identifiants
sont dans patients_ids sont extraites. Dans le cas
contraire, les délivrances de tous les patients sont
extraites.
Utilisation
extract_drug_dispenses(
start_date = NULL,
end_date = NULL,
atc_cod_starts_with = NULL,
dis_dtd_lag_months = 6,
patients_ids = NULL,
output_table_name = NULL,
overwrite = FALSE,
conn = NULL
)
Arguments
- start_date
Date. La date de début de l a période des délivrances des médicaments à extraire.
- end_date
Date La date de fin de la période des délivrances des médicaments à extraire.
- atc_cod_starts_with
Character vector Optionnel. Les codes ATC par lesquels les délivrances de médicaments à extraire doivent commencer.
- dis_dtd_lag_months
Integer. Le nombre maximum de mois de décalage de FLX_DIS_DTD par rapport à EXE_SOI DTD pris en compte pour récupérer les délivrances de médicaments. Par défaut, 6 mois.
- patients_ids
data.frame Optionnel. Un data.frame contenant les paires d'identifiants des patients pour lesquels les délivrances de médicaments doivent être extraites. Les colonnes de ce data.frame doivent être "BEN_IDT_ANO" et "BEN_NIR_PSA". Les "BEN_NIR_PSA" doivent être tous les "BEN_NIR_PSA" associés aux "BEN_IDT_ANO" fournis.
- output_table_name
Character Optionnel. Si fourni, les résultats seront sauvegardés dans une table portant ce nom dans la base de données au lieu d'être retournés sous forme de data frame.
- overwrite
Logical. Indique si la table
output_table_name
doit être écrasée dans le cas où elle existe déjà.- conn
DBI connection Une connexion à la base de données Oracle. Si non fournie, une connexion est établie par défaut.
Valeur de retour
Si output_table_name est NULL, retourne un data.frame contenant les délivrances de médicaments. Si output_table_name est fourni, sauvegarde les résultats dans la table spécifiée dans Oracle et retourne NULL de manière invisible. Dans les deux cas les colonnes de la table de sortie sont :
BEN_NIR_PSA : Colonne présente uniquement si les identifiants patients (
patients_ids
) ne sont pas fournis. Identifiant SNDS, ausi appelé pseudo-NIR.BEN_IDT_ANO : Colonne présente uniquement si les identifiants patients (
patients_ids
) sont fournis. Numéro d’inscription au répertoire (NIR) anonymisé.EXE_SOI_DTD : Date de la délivrance
PHA_ACT_QSN : Quantité délivrée
PHA_ATC_CLA : Code ATC du médicament délivré
PHA_PRS_C13 : Code CIP du médicament délivré (nom dans la table ER_PHA_F : PHA_PRS_C13, nom dans la table IR_PHA_R : PHA_CIP_C13)
PSP_SPE_COD : Code de spécialité du professionnel de soin prescripteur (voir nomenclature IR_SPE_V)
Détails
Pour être à flux constant sur l'ensemble des années, il faut utiliser dis_dtd_lag_months = 27. Cela rallonge le temps d'extraction alors que l'impact sur l'extraction est minime car la Cnam extime que 99 % des soins sont remontés à 6 mois c'est-à-dire pour dis_dtd_lag_months = 6). Voir https://documentation-snds.health-data-hub.fr/snds/formation_snds/initiation/schema_relationnel_snds.html#_3-3-dcir