Accueil > R - Généralités > Des données dans un tableur
Des données dans un tableur
jeudi 5 mai 2022, par
Un tableur comme Excel est un outil de comptabilité analytique & n’a jamais été conçu pour stocker des données. Néanmoins ces logiciels sont puissants, versatiles, très pratiques, semblent simples d’emploi & permettent, sous certaines conditions, de stocker des tableaux simples. Un peu de réflexion & de travail préparatoire vous feront gagner beaucoup de temps.
Dans tous les cas on ne travaille jamais seul, le data-manager ou le statisticien peuvent à tout moment vous conseiller.
Pour mémoire le tableau qui arrive au statisticien, donc quand toutes les saisies & queries sont terminées, doit être complètement anonymisé.
Un seul tableau
Toutes les données doivent rentrer dans un seul tableau. Dans certains cas c’est impossible . Dans ce cas c’est un tableau par onglet (avec un nom clair pour l’onglet). Par exemple, un travail sur la prise en charge d’une pathologie dans les services d’un hôpital. Vous n’allez pas ressaisir les caractéristiques du service pour chaque patient. Vous aurez donc un tableau Patients (1) avec une variable Service qui permettra de rattacher ce patient aux données du service contenus dans un autre tableau nommé Service (2).
service | age | taille | ... | |
---|---|---|---|---|
P01 | Gastro | 85 | 158 | … |
P02 | Neuro | 65 | 187 | … |
P03 | Réa | 55 | 178 | … |
… | … | … | … | … |
ID | service | nb_lit | dms | … |
---|---|---|---|---|
S01 | Gastro | 12 | 5.8 | … |
S02 | Neuro | 16 | 6.3 | … |
S03 | Réa | 18 | 6.7 | … |
… | … | … | … | … |
***Un tableau c’est un rectangle plein
Les cas (patients par ex.) sont en ligne & les variables (âge, poids…) en colonne donc un grand rectangle.
Ce tableau ne contient que les données, aucun calcul. Pas de moyenne en bas de colonnes. Si vous voulez faire des calculs, résumés etc. copiez l’onglet & faites tout ce que vous voulez sur la copie.
***Pas de mise en forme
Seul le texte du tableau sera utilisé. Toutes les mises en forme
(couleur, gras...) seront perdues lors de l’importation dans le
logiciel de statistique. Donc utilisez ces aides tant que vous voulez
pour avoir un tableau clair où vous vous repérez facilement mais
l’information ne doit jamais être contenue uniquement dans ces
artifices.
Le tableau réduit au simple texte doit être complet & suffisant.
Données manquantes
Vous aurez des données manquantes. Il faut noter un code arbitraire pour coder ces données. Habituellement on utilise NA pour Not Available mais l’important est de toujours utiliser le même code. Une case vide peut être le code faute de mieux.
des Variables
**Nom des variables
Le nom de la variable (ou de l’onglet) va être utiliser ensuite dans du code. Par exemple pour calculer la moyenne de l’âge :
Il donc évident qu’il doit s’agir d’un nom simple & court, pas la question posé au patient sur le questionnaire. Ce nom ne doit pas comporter d’accent, d’espace ou de caractère bizarre. Et il est préférable de tout mettre en minuscule (format dit petit serpent). une bobnne solution est de fournir un second tableau avec deux colonnes : le nom abrégé (dn
) & le nom vrai (Date de naissance
).
Question | Nom inutilisable | Nom correct |
---|---|---|
Quel est votre âge ? | Âge | age |
Sexe du patient | Sexe patient | sexe |
Pression artérielle systolique | PA systolique | pa_sys |
***Tableau inutilisable
H1 | H2 | |||||
---|---|---|---|---|---|---|
ID | PAM | FC | SpO2 | PAM | FC | SpO2 |
P1 | 123 | 98 | 98 | 145 | 111 | 97 |
P2 | 145 | 88 | 97 | 154 | 121 | 99 |
P3 | 125 | 78 | 98 | 145 | 98 | 98 |
Ce tableau, bien que parfaitement clair pour un être humain, est inutilisable. Quel est le nom de la variable en colonne 2 ?
***Première solution – format court
ID | PA_H1 | FC_H1 | SpO2_H1 | PA_H2 | FC_H2 | SpO2_H2 |
---|---|---|---|---|---|---|
P1 | 123 | 98 | 98 | 145 | 111 | 97 |
P2 | 145 | 88 | 97 | 154 | 121 | 99 |
P3 | 125 | 78 | 98 | 145 | 98 | 98 |
Solution simple. La comparaison des PA entre H1 & H2 (test de student) va s’écrire :
***Deuxième solution – format long
Exactement les mêmes données, seule la présentation change :
ID | heure | PA | FC | SpO2 |
---|---|---|---|---|
P1 | H1 | 123 | 98 | 98 |
P1 | H2 | 145 | 111 | 97 |
P2 | H1 | 145 | 88 | 97 |
P2 | H2 | 154 | 121 | 99 |
P3 | H1 | 125 | 78 | 98 |
P3 | H2 | 145 | 98 | 98 |
Moins instinctif mais souvent plus pratique. Le même test de Student va alors s’écrire :
*du Codage des variables
Beaucoup de personnes, souvent beaucoup plus jeunes que moi, sont persuadées qu’un ordinateur ne peut gérer que des chiffres. Grande nouvelle, c’est faux ! Et votre tableau sera plus clair avec des intitulés en clair (Homme, Femme) qu’avec des chiffres (1, 0). Et c’est vous qui expliquerez pourquoi vous avez codé les dames en zéro... Même les scores ou échelles doivent être notés en texte. Les coder en numérique revient à dire que passer de 1 à 2 est aussi grave que de passer de 6 à 7. Vous en être sûr ?
Il reste à éviter les erreurs de saisie. On voit souvent dans la même colonne des « oui », Oui
& surtout «oui »
(il y a une espace en trop). On peut facilement éviter ça & gagner du temps sur la saisie en utilisant l’outil [**Validation de données*] dans Excel. Ça vous évitera aussi des âges de 548 ans & la saisie sera beaucoup plus rapide.
**Des nombres
Une variable numérique ne doit contenir que des nombres ! Et > 5
ou 5 mmol/L
ne sont pas des nombres ! L’unité de mesure n’a pas à être présente sur le tableau final, ni dans le titre, ni dans les données. Utilisez la validation de données aussi pour vos variables numériques. C’est un peu de travail au début mais un gain de temps & de sécurité ensuite.
**Date & Heure
les dates sont une source d’erreur constante. Il existe au moins trois manières d’écrire les dates d’usage courant. La solution est de ne pas laisser Excel choisir & d’entrer les dates en format texte ou de faire très attention au codage. En particulier deux colonnes peuvent être codées différemment sans que vous l’ayez demandé. De toute façon il faudra convertir les dates pour le logiciel de statistique donc choisissez une norme, n’importe laquelle, mais n’en changez pas en route.
France | 12/08/2022 |
12 août 2022 | |
12/08/22 | |
USA | 08-12-22 |
ISO 8601 | 22-08-12 |
De plus certains systèmes compte le temps en seconde depuis le 01/01/1900, d’autres depuis le 01/01/1904…
Vous comprenez bien qu’on improvise pas un tableau de données. La bonne solution, un peu lourde mais si pratique, est d’écrire en premier un tableau de ses variables (Code Book) avec toutes les informations sur le modèle :
Tableau des variables | nom abrégé | type | valeurs | |
---|---|---|---|---|
1 | Âge du patient | age | entier | 18 –110 |
2 | Date d’admission | dateadm | date | dd/mm/yyyy |
3 | Sexe | sexe | facteur | F / M |
4 | BMI | bmi | entier | 10 à 60 Kg |
5 | Score IGS II à l’admission | igsadm | entier | 0 à 120 |
6 | Oxygénothérapie | oxy | entier | 0 à 20 |
7 | Ventilation invasive | vi | facteur | oui/non |
8 | Sédation | sedation | facteur | oui/non |
9 | Curarisation | curarisation | facteur | oui/non/nsp |
*des Sauvegardes !
Un ordinateur n’est qu’une machine & est sujet à la panne. Un disque dur est une mécanique fragile (qu’il soit mécanique ou SSD). Une tasse de café peut se renverser. Donc on fait des sauvegardes ! Sur plusieurs supports en local & à distance. Il existe des solutions simples de sauvegarde (TimeMachine sur MacOS ou rsync sur Linux par ex.).
*Remerciements
La plupart de ces conseils est très bien expliquée sur le blog de Claire Della-Vedova dont je me suis largement inspiré.
…