Data PMSI
  • Formations PMSI R
  • Live coding PMSI R
  • Guide des scripts
  • Pre-requis R
  • Jeux de données
    • Jeux PMSI MCO
  1. Extraction partie d’une chaîne de caractères
  • Formations PMSI R
  • Live coding PMSI R
  • Guide des scripts
  • Scripts MCO
  • Scripts SMR
  • Scripts PSY

Sur cette page

  • Introduction
  • String à taille fixe
    • Code
    • Commentaires
  • String à taille variable
    • Code
    • Commentaires
  • String date
    • Code
    • Commentaires

Extraction partie d’une chaîne de caractères

MCO
Auteur·rice

denis Gustin

Date de publication

9 septembre 2024

Introduction

string = chaîne de caractères

On distingue 3 situations (string à taille fixe, string à taille variable, string de type date) illustrées chacune par un traitement

String à taille fixe

On repère les séjours de complexité 3 ou 4

Code

library(dplyr)

sejour_niveau_3_4 <- mco_rss$rum %>% 
    dplyr::select(nas,no_rss,no_rum,ghm) %>% 
    dplyr::mutate(is_niveau_3_4 = stringr::str_sub(ghm, start = 6, end = 6) %in% c('3','4')) %>% 
    dplyr::filter(is_niveau_3_4) %>% 
    dplyr::distinct(nas,no_rss,ghm)
sejour_niveau_3_4

Commentaires

Ligne 3 : mco_rss$rum est un tibble des variables de la partie fixe des RUM. Voir Guide des scripts - Jeux de données

Ligne 5 : stringr::str_sub(ghm, start = 6, end = 6) isole la complexite du GHM

Ligne 6 : raccourci pour dplyr::filter(is_niveau_3_4 == TRUE)

Ligne 7 : le dplyr::distinct() sur des variables liées au séjour fait passer le tibble d’un tibble de RUM à un tibble de séjours

Le script est pédagogique car, en pratique, on dispose généralement de la variable complexite par défaut.

Le filtrage sur la complexité est disponible dans tous les écrans PMSISoft MCO

String à taille variable

On repère les codages CIM-10 terminés par un 9

Code

library(dplyr)

codage_das_9 <- mco_rss$das %>% 
    dplyr::select(nas,no_rss,no_rum,das) %>% 
    dplyr::mutate(is_das_9 = stringr::str_detect(das, pattern = "9$")) %>% 
    dplyr::filter(is_das_9)
codage_das_9

Commentaires

Ligne 3 : mco_rss$das est un tibble des variables das associées aux RUM. Voir Guide des scripts - Jeux de données

Ligne 5 : le repérage des codes CIM-10 recherchés se fait via le regex très simple 9$ qui signifie “un 9 en dernière position”

Le filtrage par regex sur un codage est disponible dans tous les écrans PMSISoft MCO

String date

On produit la variable mois_sortie_um

Code

library(dplyr)

rum_extended <- mco_rss$rum %>% 
    dplyr::select(nas,no_rss,no_um,date_sortie_um) %>% 
    dplyr::mutate(mois_sortie_um = stringr::str_sub(date_sortie_um,6,7),
                  mois_sortie_um_label = as.character(lubridate::month(date_sortie_um, label = TRUE, abbr = FALSE, locale = Sys.getlocale("LC_TIME"))))
rum_extended

Commentaires

Ligne 3 : mco_rss$rum est un tibble des variables de la partie fixe des RUM. Voir Guide des scripts - Jeux de données

Ligne 6 : mois_sortie_um_lableest une alternative au code la ligne 5 permettant d’obtenir directement le mois de sortie de l’UM avec son intitulé en français (ex : “janvier”)

La variable mois_sortie_um est calculée par défaut dans tous les écrans PMSISoft MCO

Etre tenu au courant de la publication des nouveaux scripts PMSI R

Blog codé avec Quarto

 

Mentions légales | © Copyright 2023-2024 - DATAMIS