#' Consommation
#'
#' Statistiques descriptives du nombre de jours qu'un individu consomme au moins *X* médicaments.
#'
#' @param data_polysimul1_data Dataset créé par la fonction `polysimul1_data()`.
#'
#' @return data.table à 13 variables :
#' * nRx : Nombre minimal de médicament(s) consommé(s) en une journée.
#' * Statistiques descriptives : Moyenne, Écart-type, Min, P5, P10, Q1, Médiane, Q3, P90, P95, Max.
#' * n : nombre d'individus.
#' @import data.table
#' @export
polysimul_consoMinimale <- function(data_polysimul1_data){
x <- copy(data_polysimul1_data); rm(data_polysimul1_data)
listID <- sunique(x$ID) # list des ID unique
maxRx <- max(x$nRx) # maximum de médicaments consommé en une journée
consoMinimale <- rbindlist(
lapply(seq(maxRx), function(nMedicament){
SD <- x[nRx >= nMedicament, .(nJours = .N), .(ID)] # nombre de jours avec au moins nRx médicaments
# Ajouter les ID sans conso : nJours = 0
IDsansConso <- listID[!listID %in% SD$ID] # list des ID sans conso
if(length(IDsansConso)){ # s'il y a des ID sans conso
SD <- rbind(SD, data.table(ID = listID[!listID %in% SD$ID], # ajouté ceux sans consommation
nJours = 0))
}
SD <- SD[, .(nRx = nMedicament, # nombre minimum de médicament consommé en une journée
Moyenne = mean(nJours), # stats descriptives
`Écart-type` = sd(nJours),
Min = min(nJours),
P5 = quantile(nJours, 0.05),
P10 = quantile(nJours, 0.10),
Q1 = quantile(nJours, 0.25),
`Médiane` = median(nJours),
Q3 = quantile(nJours, 0.75),
P90 = quantile(nJours, 0.90),
P95 = quantile(nJours, 0.95),
Max = max(nJours),
n = uniqueN(ID)),] # nombre de ID analysé
return(SD)
})
)
return(consoMinimale)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.