Création tranche horaire avec dplyr

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

matthieu jamme
Messages : 5
Enregistré le : 18 Mar 2019, 09:33

Création tranche horaire avec dplyr

Messagepar matthieu jamme » 30 Avr 2019, 09:12

Bonjour à tous,

J'ai à ma disposition un jeu de données de patients hospitalisés en réanimation. Ces derniers bénéficient d'une mesure par l'infirmier(ère) de la diurèse à des intervalles plus ou moins régulier selon leur passage. J'ai donc plusieurs mesures par jour de la diurèse pour chaque journée d'hospitalisation. J'ai pour chaque patient sa date et heure d'admission, date et heure de sortie de réanimation, date et heure de la mesure et le résultat de la mesure de la diurèse.

L'idée est que je pars d'une base en tidy avec autant de lignes que de mesure de la diurèse. J'aimerai réduire le nombre de lignes pour au final avoir une ligne par journée d'hospitalisation. Mais comme je souhaite garder l'information des mesures de diurèse, je cherche à créer 4 nouvelles colonnes qui correspondraient à la diurèse mesurée dans les tranches horaires suivantes : 0-6h, 6-12h, 12-18h et 18-24h. Et j'avoue que je bloque un peu quant cette transformation via dplyr.

Est ce quelqu'un aurait une astuce ?

Voici un exemple de ma base de départ :

blim<-data.frame(Id_patient=c(00001,00001,00001,00001,00001),
date_debut_hospit=c("2014-07-17 21:24:00","2014-07-17 21:24:00","2014-07-17 21:24:00",
"2014-07-17 21:24:00","2014-07-17 21:24:00"),
date_fin_hospit=c("2014-07-21 11:25:00","2014-07-21 11:25:00","2014-07-21 11:25:00",
"2014-07-21 11:25:00","2014-07-21 11:25:00"),
duree_hospit=c(3,3,3,3,3),
date_mesure=c("2014-07-17 22:02:00","2014-07-18 02:02:00","2014-07-18 05:54:00",
"2014-07-18 09:59:00","2014-07-18 14:00:00"),
resultat_mesure=c(100,500,300,300,300))

Pierre-Yves Berrard
Messages : 1029
Enregistré le : 12 Jan 2016, 23:30

Re: Création tranche horaire avec dplyr

Messagepar Pierre-Yves Berrard » 30 Avr 2019, 09:31

Bonjour,

dplyr ne permet pas de répondre directement à ce besoin, je pense.

Je procèderais de la sorte :
  • créer une colonne jour_mesure et une colonne heure_mesure (le package lubridate peut aider à manipuler les dates)
  • créer les plages d'heures à partir de heure_mesure
  • passer plage_heure_mesure en colonne (via reshape ou tidyr::spread)
PY


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité