Transposer des colonnes en lignes

Imaginez que vous vouliez importer vos données dans une base de données comportant les champs suivants :

  • Nom

  • Prénom

  • Titre

  • Type documents

  • Nombre publié

La table de données à importer pour correspondre à cette structure ressemblerait à la suivante :

Table de données pour importation

Nom

Prénom

Titre

Type de documents

Nombre publié

Conda

Ana

Professeure adjointe

Articles

12

Conda

Ana

Professeure adjointe

Chapitres de livre

3

Conda

Ana

Professeure adjointe

Livres

1

[...]

Votre jeu de données actuel est presque compatible à une exception près : les données sur le nombre de publications par type de documents sont présentés en colonnes distinctes, le nom de la colonne indiquant le type de documents, comme illustré ci-dessous :

Jeu de données actuel

Nom

Prénom

Titre

Articles

Chapitres de livre

Livres

Billets de blogue

Capsules vidéos

Conda

Ana

Professeure adjointe

12

3

1

2

Ouimet

Ninon

Professeure agrégée

25

14

Temps

Paul

Professeur titulaire

65

12

3

[...]

La transformation que l'on aimerait ici faire est de pouvoir transposer ces colonnes par type de documents en lignes, ce qu'OpenRefine sait très bien faire !

  1. En cliquant sur l'icône de la flèche à la gauche de la première colonne à transposer (Articles), cliquez sur Transposer et ensuite sur Transposer les cellules de plusieurs colonnes en ligne...

    1. La fenêtre de dialogue Transposer les cellules au travers des colonnes en lignes devrait s'ouvrir :

  2. Vérifiez que la dernière colonne à transposer est la bonne (boîte Jusqu'à la colonne).

  3. Comme vous voulez créer deux nouvelles colonnes, soit une où le type de documents sera indiqué (par exemple, Articles) et l'autre pour le nombre de publications, complétez les informations dans la section Transposer en pour le choix Deux nouvelles colonnes

    • Il faut indiquer dans la boîte Colonne clé, le nom du champ qui contiendra les noms des colonnes de départ. Il s'agira ici de Type de documents.

    • Dans la boîte Colonne valeur, c'est le nom du champ où se retrouvera la valeur que l'on doit indiquer, donc Nombre de publications

    1. Après avoir cliqué sur Transposer, le jeu de données modifié sera affiché et vous devriez y voir transposées les colonnes choisies :

  4. Résultat

    La transposition de colonnes permet de transformer certaines colonnes pensées plutôt "en matrice" en lignes. À un détail près le jeu de données correspond à ce qui était demandé. Il ne resterait qu'à remplir les cellules vides pour les premières colonnes! Il aurait été possible de le faire lors de la première étape en cochant l'option Remplir les autres colonnes. Si vous avez oublié de le faire, ceci se fait aussi très facilement en cliquant sur l'icône de la flèche à la gauche d'une des colonnes à compléter, en cliquant sur Éditer les cellules et puis finalement sur Recopier les valeurs dans les cellules vides consécutives. Il faut répéter cette opération avec toutes les colonnes comportant de telles cellules vides.