Dans le cadre de la LP SIS, j’ai occupé le poste de programmeur SAS stagiaire dans le service biostatistique d’une société traitant les données d’essais cliniques.

Mission du stage

Dans le cadre d’un essai clinique, les données recueillies sur chaque participant doivent être passées en revue avant la réalisation des analyses statistiques et la levée de l’aveugle. Dans ce contexte de contrôle de données, les éléments composant une fiche décrivant le profil d’un sujet participant à un essai clinique ou « patient profile » (données démographiques, événements indésirables et traitements concomitants déclarés, etc …) devront être définis et un algorithme sera développé afin de permettre la production automatisée de cette fiche pour chaque participant et devra être exécutable quelque soit le design d’étude.

Méthodes  informatiques

Programmation de l’algorithme en langage macro SAS® sous le progiciel SAS®

Cahier des charges

Le document à créer, au format PDF, doit présenter une mise en page aboutie afin de pouvoir placer les éléments de manière précise sur la page, comme par exemple juxtaposer plusieurs graphiques. La taille, la couleur et la police utilisées pour chaque partie doivent être définies.

 Exemple: les événements indésirables et les traitements consommés 

La fiche permet de corréler l’ensemble des informations d’un patient avec les potentiels événements indésirables (EI) et la prise de traitements concomitants. Voici un exemple de la représentation des événements indésirables et des traitements sur la fiche.

Pour faciliter la revue des utilisateurs, ils sont représentés sur des graphiques. Ces deux graphiques ont la même échelle de temps et les visites de l’essai clinique effectuées sont représentées par des lignes verticales. D’autre part, tous les événements ou traitements non terminés à la fin de l’étude sont représentés par une flèche. Si la prise de traitements a démarré avant le début de l’étude, une flèche vers la gauche sera représentée.

Les dates partielles sont remplacées afin de pouvoir représenter graphiquement les évènements. Par exemple, si le jour de la date de début de l’évènement est manquant :

  • et si le mois est égal au mois de la première visite, alors la date partielle sera remplacée par la date de première visite de l’étude
  • et si le mois est postérieur au mois de la première visite, alors le jour de la date partielle sera remplacé par le 1er jour du mois

Une légende indique également le grade d’intensité de l’EI :

  • faible : couleur verte
  • modérée : couleur orange
  • sévère : couleur rouge

Capture

Le programme doit pouvoir être exécuté sur toutes les bases de données de l’entreprise.


Références

Kuhfeld W Creating Statistical Graphics with ODS in SAS® Software, SAS institue Inc. , ASA conference on Statistical practice Feb 22,2014

Matange S. Patient Profile Graphs Using SAS®. SAS Global Forum 2013. Pharma and Health Care. Paper 160-2013

O’Connor D., Matange S. Create Comprehensive Patient Profiles with SAS. SAS® Institute Inc., Cary, NC

Peterson T., Ramalingam S. Operational Uses of Patient Profiles … Even in an eCTD and SDTM World. PharmaSUG2010 – Paper AD21

8 COMMENTS

  1. Article intéressant! Qu’elle était la durée du stage ? Est-ce suffisant pour une bonne intégration dans la société ?

  2. Bonjour, la durée du stage est de 6 mois, ce qui est suffisant pour s’intégrer. La programmation est déjà bien aboutie en 3 mois de stage effectif, à mi parcours

  3. Article intéressant ! Cela représente une petite partie du métier de programmeur SAS qui n’est pas forcément connue par ceux qui souhaitent s’aventurer dans cette carrière !

    La 2ème partie concernent la programmation de tables dérivées à partir de ce qu’on appelle la “raw data”, que le data manager mettra à sa disposition (base pas nécessairement gelée). Ces tables dérivées sont créées à partir de spécifications. Ces spécifications sont des informations réunies dans un fichier Excel permettant de savoir comment créer chaque variable de chaque table, succintement. C’est le programmeur SAS qui s’en occupe en s’appuyant sur le SAP (Statistical Analysis Plan) voire du Protocole, eux-mêmes rédigés en anglais.
    Ces tables dérivées ont une mise en forme standard. Soit celle propre au laboratoire pharmaceutique, soit celle préconisée par des organisations telle que la FDA qui est le format CDISC (SDTM, ADaM entre autres).

    La 3ème partie concernent la programmation des “Tables Shells” ou “TLG” ou encore “Tables, Listings & Graph”. C’est le moment du “Reporting”. Il y a un modèle prédéfini par le statisticien. Le reporting peut être réservé au statisticien dans les CROs. Cela dépend de l’organisation. En tant que prestataire/consultant dans les laboratoires pharmaceutiques, le programmeur est en charge du reporting. Souvent on utilise beaucoup de macro-programmes standards. Et peu de “vraie” programmation est nécessaire. Ces TLG s’appuient sur les tables dérivées d’analyse mises en forme selon le laboratoire ou selon le CDISC ADaM. C’est là que l’on peut être amené à appliquer certaines méthodes statistiques (Méthode Kaplan Meier, Regression logistiques, Modèle mixte…) et pas mal de statistiques descriptives. Les résultats apparaîtront dans des tableaux ou graph.

    Globalement, le programmeur SAS est un “élément pivot” important car il est très souvent en contact avec le data manager pour mieux comprendre la base ou bien lui faire part des incohérences observées au moment de la programmation des tables dérivées. Puis il est très souvent en contact avec le statisticien pour s’assurer que ce qu’il fait est en parfaite adéquation avec le SAP (rédigé par le statisticien). De plus, les incohérences retrouvées au moment du reporting peuvent être liées à la programmation des tables dérivées.

    • Merci Elsa, ancienne élève de la promotion LP SIS (si je ne me trompe pas) pour ce complément d’informations, qui mériterait un article à part entière 😉

  4. Surement encore trop tôt pour le savoir mais pensez-vous avoir une proposition d’embauche à la suite de votre stage ?

    • Bonjour Maxime. Je pense qu’il n’y aura pas de propostion d’embauche, pour des raisons de besoins et de budget de l’entreprise

Laisser un commentaire