Bienvenue à tous. Je m'appelle Nathan Clark. Je travaille chez IDEXX Laboratories. J'utilise JMP depuis 22 ans et je vais donner une conférence sur le menu Tableaux. Ce menu est, à mon avis, l'un des atouts majeurs de JMP, car il permet de manipuler, de manipuler et d'exploiter vos données de manière à faciliter de nombreuses autres analyses. Maîtriser le menu Tableaux vous permettra d'améliorer considérablement vos performances par rapport aux méthodes traditionnelles, comme le copier-coller.
Aujourd'hui, je souhaite vous parler de mon utilisation du menu Tableaux, de quelques pièges rencontrés au fil des ans lors de la prise en main, et peut-être aussi de quelques conseils et astuces. Sur ce, commençons. Nous allons ouvrir la grande classe préférée de tous avec quelques modifications que j'ai apportées. Nous commencerons tout en haut du menu Tableaux, avec le résumé.
Le résumé, comme on peut s'y attendre, sert aux statistiques récapitulatives. À l'ouverture, plusieurs options s'offrent à vous. Si vous choisissez une variable de réponse comme la taille, vous pouvez calculer une moyenne ou un écart-type. Un aperçu devrait apparaître pour chaque élément du menu du tableau. C'est formidable. Je ne saurais trop insister sur son utilité : il permet de visualiser rapidement le contenu du tableau.
Vous voyez maintenant que j'ai un résumé. Il comporte 42 lignes, une moyenne et une taille. Aucun autre élément n'est pris en compte. Cela représente la moyenne générale et l'écart type général de toutes les données. Pour les séparer, il suffit de les faire glisser dans la section de regroupement. J'ai maintenant une moyenne et une taille pour les hommes et les femmes.
Voilà, je dirais, l'objectif principal du résumé. En cliquant sur OK, vous accédez au résumé, puis vous pouvez accéder ici et ajouter des statistiques à partir de cette colonne de points d'intérêt. Si vous avez oublié quelque chose et souhaitez également ajouter la moyenne des poids, cliquez sur OK pour l'ajouter.
C'est vraiment génial. Je l'utilise souvent. Je vais ajouter une note ici, là où ces éléments sont verrouillés. Ça signifie que je ne peux pas les modifier. Si j'essaie de saisir un autre chiffre, je reçois une notification ici. Je l'utilise donc pour mes résumés, mes statistiques, mais je l'utilise beaucoup plus pour autre chose. Nous allons fermer cette fenêtre. Je vais la rouvrir et souligner quelques autres points.
Vous venez de voir que j'ai mentionné le verrouillage de ces colonnes. Si vous décochez cette case, ces colonnes ne seront pas verrouillées, mais elles ne seront pas non plus liées aux données, ce qui facilite certaines des opérations que nous verrons plus tard.
Pendant que j'aborde cette section, je vous signale également deux cases fréquemment vues dans le menu « Tables ». Gardez la boîte de dialogue ouverte. Cette case restera ouverte même après avoir cliqué sur OK. Ainsi, vous pourrez rapidement explorer différentes idées. Si vous enregistrez un script dans la table source, non seulement la table créée contiendra un script et son explication, mais ce même script sera également stocké dans la table d'origine, ce qui est, je trouve, une excellente fonctionnalité sortie il y a une version environ.
Maintenant, pour en venir à l'utilisation du résumé, je me penche sur la compréhension des données et leur décomposition en différentes données démographiques. Par exemple, si je sélectionne simplement le sexe et que je l'ajoute au groupe, je ne touche pas aux statistiques. J'obtiens quand même un tableau avec la répartition et le nombre de lignes. Si je clique sur OK, un tableau s'affiche. Comme il est lié, lorsque je clique dessus, tous les éléments qui m'intéressent sont sélectionnés.
C'est un excellent moyen de commencer à explorer vos données pour en extraire des sous-ensembles, dont nous parlerons plus tard, et d'en comprendre d'autres aspects. Nous y reviendrons pour approfondir ce sujet. Si je consulte ce document par nom, vous constaterez une distinction entre le sexe et le nom associé. Comme vous le remarquerez, cela nous amène ici à la constatation que certaines de ces N lignes ne forment qu'une seule ligne.
J'aborderai ce point ici dans le résumé, mais il est essentiel pour de nombreuses autres plateformes que nous allons aborder, notamment si vous devez résoudre un problème lié à un aspect anormal de vos données. C'est la notion d'unicité.
Quelle que soit la table que vous utilisez, vous devez toujours pouvoir identifier les colonnes, dans différentes combinaisons, qui peuvent atteindre différents niveaux d'unicité. Si je supprime ces deux éléments, nous commencerons par celui-ci pour ce dont je parle. Si nous prenons le nom, qui nous semble généralement être un identifiant assez unique, nous pouvons regrouper par nom ici.
En faisant défiler la liste, on constate que la plupart d'entre eux ne font qu'un. En bas, on voit Robert et Pat, qui ont chacun deux lignes associées. Le nom seul ne suffit pas à distinguer les données de cet ensemble ; il faut donc y ajouter des colonnes. En ajoutant le sexe, on pourrait peut-être mieux comprendre.
Nous avons encore beaucoup de lignes N égales à une, ce qui nous permet d'obtenir l'unicité. Cependant, ici, nous avons toujours deux Roberts : un homme et deux lignes lui sont associées. Cela signifie qu'il nous faut encore ajouter une colonne pour atteindre le niveau d'unicité souhaité. Je vais réduire l'âge. Nous constatons maintenant que nos données sont totalement uniques, avec une valeur de un sur toute la longueur.
L'aperçu est un excellent moyen de visualiser cela. Si vous disposez de données supplémentaires qui s'intègrent bien dans l'aperçu, vous pouvez cliquer sur OK ou utiliser la boîte de dialogue « Conserver » pour le maintenir ouvert. Il est essentiel, lorsque vous manipulez des données, de savoir ce qui les rend uniques et, parfois, d'ajouter des colonnes pour les rendre uniques si elles ne le sont pas initialement, car cela entre en jeu lorsque nous explorerons d'autres pistes.
À ce propos, nous allons directement accéder à la plateforme de sous-ensembles. Elle nous permet de sous-diviser les données comme suggéré. Vous pouvez gérer toutes les lignes, les lignes sélectionnées, et filtrer par ligne. De cette façon, vous pouvez également lier le résultat à la table de données d'origine, même si je vais faire autre chose ici, qui me semble un peu plus rapide et plus simple. JMP vous aidera également en fonction du contenu réel de la table. Comme toujours, l'aperçu est un outil précieux.
Ici, je peux cliquer sur M, faire un clic droit et sélectionner « Cellules correspondantes ». Toutes mes cellules M sont sélectionnées. Ensuite, si je vais dans « Tableaux et sous-ensembles », je vois que c'est automatiquement… En supposant que je veuille afficher les lignes sélectionnées, je peux afficher toutes les colonnes, sélectionner les colonnes sélectionnées (pour l'instant, le sexe est une colonne sélectionnée), ou conserver toutes les colonnes.
Copier et supprimer des formules permet de maintenir la clarté. Vous n'évaluez les formules que lorsque cela vous intéresse vraiment. En cliquant sur OK, vous obtenez un sous-ensemble. Ce sous-ensemble n'est pas lié aux données. Vous pouvez cliquer ici. Il s'agit du tableau autonome.
Si vous souhaitez un sous-ensemble lié, oui, vous pouvez aller ici, dans « Sous-ensemble ». Nous allons effectuer un rappel, cliquer ici, puis cliquer sur « OK ». Le sous-ensemble est maintenant lié aux données. Cependant, cela représente plusieurs clics de plus que ce que je souhaite réellement faire. En général, je fais un clic droit, je sélectionne « Cellules correspondantes » et j'obtiens la sélection souhaitée. Il existe plusieurs méthodes. Vous voyez ici, en bas, que nous avons 23 lignes sélectionnées. Un clic droit ici m'amène à la vue Données. J'obtiens immédiatement un sous-ensemble lié.
Cela ne vous permet pas de sélectionner uniquement les colonnes. Cette vue de données affiche toujours toutes les colonnes, mais je l'utilise constamment. Si, par exemple, j'ai une ligne en haut et une ligne en bas d'un ensemble de données sélectionné ici, et que je souhaite les afficher côte à côte, la vue de données les affiche, ce qui me permet de les consulter immédiatement et d'identifier les événements.
J'adore cette fonctionnalité. Je l'utilise beaucoup. Il est important de savoir que, lorsqu'on utilise la Vue des données, comme elle est liée à l'ensemble de données, toute modification apportée à cette Vue sera répercutée. Comme vous le voyez, Tim est surligné ici. Si je le remplace par un M minuscule, cela se répercute dans le tableau lui-même. Soyez vigilant si vous utilisez ces options, car si vous les traitez comme un sous-ensemble indépendant, vous risquez de modifier vos données principales.
Vous pouvez utiliser cela à votre avantage. Si je devais convertir tous ces « M » mélangés sans le tableau en « M » minuscules, je pourrais simplement mettre le premier « M » en minuscule, puis faire un clic droit et remplir jusqu'à la fin du tableau, et maintenant tous les « M » seront en minuscules. Cela pourrait être très utile pour corriger un ensemble de données ou enrichir vos données différemment. C'est un point à prendre en compte lorsque vous utilisez vos données et que vous expérimentez avec vos données. C'est une fonctionnalité phénoménale pour manipuler vos données et effectuer différentes tâches.
Le tri est vraiment ce qu'il promet. Puissant et simple à utiliser, il constitue une plateforme idéale. Vous pouvez trier. Voyons voir, nous allons trier par nom ici, et vous verrez que le tri passe immédiatement par défaut en ordre croissant. En cliquant dessus, vous pouvez forcer le tri en ordre décroissant. Vous pouvez ajouter des éléments supplémentaires et le tri sera effectué, par ordre croissant ou décroissant, et ainsi appliquer autant de colonnes que nécessaire. Lorsque vous cliquez sur OK, JMP crée une nouvelle colonne.
Je trouve cela très utile, surtout avec les grands ensembles de données. Je pense savoir comment trier les données. Le résultat sera celui que je souhaite si l'apparence compte. Je ne veux pas non plus tout gâcher et avoir à travailler très dur pour revenir au tableau initial. Cela me donne un tableau entièrement distinct.
Souvent, je fais ça : je regarde ce tableau et je me demande : « Est-ce bien ce que je veux voir ? Est-ce mon objectif final ? » Puis je le ferme. Si c'est ce que je veux, je retourne directement au menu de tri. Je le rappelle, puis je remplace le tableau. Ce faisant, j'ai trié le tableau principal, ce qui m'aide à limiter le nombre de tableaux.
C'est vraiment bien que vous ayez cette option. Je le fais souvent pour créer la table. Ensuite, je la remplace pour m'assurer que les modifications apportées à ma table principale correspondent à mes attentes, surtout lorsque j'ai beaucoup de données avec de nombreuses colonnes et que je ne veux pas que les données paraissent inutiles et difficiles à analyser.
Passons maintenant à l'empilement. C'est vraiment génial. J'ai d'ailleurs une table spéciale avec laquelle nous allons commencer à jouer. Stack est, par nature, exactement ce que son nom indique : il prend des colonnes et les empile. Si je vais dans Tables et que j'accède à Stack, je peux prendre ces trois colonnes de lecture et les empiler.
Cliquez simplement sur OK pour afficher. L'affichage indique les étiquettes « Lectures 1, 2 et 3 », ainsi que les données associées qui se trouvaient dans leurs colonnes ou valeurs d'origine. C'est parfait.
Je l'utilise souvent lorsque j'ai beaucoup de données horizontales et que je dois les placer verticalement. Stack gère tout cela, quelle que soit l'organisation du tableau, ce qui est également un excellent point. Il maintient les relations appropriées au sein du tableau. Ces données sont toutefois un peu particulières et exploitent un élément que j'utilise fréquemment : lorsque différents groupes de données doivent être empilés et organisés de manière spécifique.
Dans ce cas, j'ai trois longueurs d'onde de données : 405, 357 et 680, et une lecture est associée à chacune d'elles. Plutôt que de simplement empiler mes lectures, je dois les associer aux longueurs d'onde appropriées. JMP peut le faire grâce à l'empilement. Nous allons dans le menu « Empiler ».
Nous allons empiler ces six colonnes, puis JMP va les organiser parfaitement. Vous pouvez voir ce que nous avons fait jusqu'à présent dans l'aperçu : JMP ne les a pas organisées correctement. Ils ont fait ce que je viens de vous montrer : ils les ont toutes empilées dans deux colonnes, ce qui n'est pas nécessaire avec ces données.
Nous allons cocher cette case ci-dessous : « Pile de séries multiples ». C’est vraiment génial ! Vous voyez déjà certains des changements apportés par JMP et nous les avons publiés. Il les introduit par défaut avec deux séries. C’est ce que nous voulons ici, car nous avons besoin d’une colonne représentant la longueur d’onde, puis d’une colonne représentant les valeurs de données associées à ces longueurs d’onde. C’est de là que viennent les deux séries. Si nous avions trois séries, cela permettrait d’obtenir ces informations.
Même si je parle avec une certaine assurance de cette pile de séries multiples, neuf fois sur dix, je clique sur un bouton au moment de la créer et les données ne correspondent pas à ce que je souhaite. Testez et habituez-vous. Plus important encore, plutôt que de mémoriser la méthode, identifiez l'apparence attendue de vos données afin de pouvoir les tester et les ajuster si nécessaire.
L'un de ces choix se trouve souvent ici, avec le bouton « Contigüe ». Ce bouton indique à JMP comment les colonnes sont organisées dans cette fenêtre, non pas dans la table de données, mais dans cette fenêtre. C'est un élément que j'oublie souvent lorsque je consulte ces données. Comme nous avons les longueurs d'onde 1, 2 et 3, puis les trois lectures, elles se touchent pour les deux séries. Il s'agit de données contiguës.
Vous pouvez voir ici, dans l'aperçu, que JMP a automatiquement corrigé le problème pour un rendu plus normal. Si on utilisait les longueurs d'onde 1, Lecture 1, Longueur d'onde 2, Lecture 2, Longueur d'onde 2, Lecture 3, comme ceci… En fait, je vais supprimer ces éléments et utiliser les longueurs d'onde 1, Lecture 1, puis 2, 2, 3, 3. Vous pouvez constater qu'avec la case contiguë cochée, les données ne sont pas nettes ; je souhaite donc la décocher. L'organisation des données dans cette fenêtre et l'utilisation ou non de ce bouton sont liées pour accéder aux données souhaitées.
Cliquez sur OK. Vous constatez maintenant que ces données sont correctes. Vous pouvez effectuer une vérification ponctuelle, par exemple pour l'échantillon 1 : 9,83 et 141. Ça a l'air correct. Vous effectuerez toujours quelques vérifications ponctuelles. Une fois cette étape terminée, nous n'en aurons plus besoin. Nous allons renommer cette longueur d'onde et supprimer cette colonne. Nous pouvons renommer Reed ou Read avec un A, puis faire un clic droit pour supprimer cette colonne. Vos données empilées sont désormais correctement organisées.
C'est vraiment pratique d'avoir Stack. Je souligne quelques points importants dans le menu, que vous pouvez utiliser à votre avantage si vous le souhaitez : vous pouvez renommer les données et les étiqueter avant de commencer. Vous pouvez choisir de supprimer toutes les colonnes présentes, de les conserver toutes ou de faire une sélection, et vous pouvez également indiquer où placer les données et étiqueter les colonnes lors de la consultation pour obtenir l'apparence souhaitée des données.
Passons maintenant à la fonction « Split ». « Split » est l'inverse de « stack ». C'est l'une des plateformes les plus puissantes, mais aussi les plus complexes à prendre en main. Nous allons vous expliquer pourquoi et comment identifier ce que vous souhaitez voir. Le plus simple est de savoir ce que ces éléments représentent. La colonne à scinder, ou la colonne à scinder, contient les données de réponse à conserver dans les cellules. Dans ce cas, nous allons utiliser « Read ».
« Séparer par » est la colonne par laquelle les lectures sont divisées individuellement, dans ce cas, la longueur d'onde. Cela nous donne un aperçu des données dans l'aperçu. Nous avons le choix entre tout conserver ou tout supprimer, selon la quantité de données dans la table. Nous cliquons sur OK et nous constatons que JMP a fait du bon travail : 357 correspond à 0,83, 405 à 9 et 141. Il semble que JMP ait fait exactement ce que nous attendions. Bravo JMP !
Je dirai que cela a oublié une information très importante qui donne l'impression que faire la division est facile, mais dès que vous obtenez des données légèrement plus compliquées, cela devient un problème car les utilisateurs commenceront à voir des données qu'ils ne voulaient pas voir, et ils auront beaucoup de frustration en essayant d'obtenir leur division correctement.
Cela revient à ce que j'ai évoqué avec le résumé, concernant l'unicité, et la compréhension de ce qui rend vos données uniques pour obtenir des réponses variées. Dans ce cas, l'échantillon serait un choix évident, car toutes les données sont regroupées par échantillon. JMP, par magie, je ne dirais pas magique, a parfaitement compris, grâce à ses algorithmes internes, l'apparence que je souhaitais obtenir en fonction de son organisation.
Mais disons que ce n'est pas comme ça. Je vais simplement insérer une colonne rapide avec des nombres aléatoires, et je vais trier selon ces nombres aléatoires pour dissocier complètement leur organisation. Maintenant, si je retourne à mon découpage, je peux cliquer sur « Rappeler » et je vois que ces informations sont ici, mais je vois automatiquement que le JMP large contient ces informations : 99,63, mais ensuite, c'est comme un 128, qui est ici.
De toute évidence, il y a quelque chose qui ne correspond pas forcément à la situation actuelle. C'est là que la frustration entre en jeu. Il faut parfois beaucoup de travail pour comprendre pourquoi. C'est là qu'intervient le regroupement. Regroupez toutes les colonnes nécessaires pour créer l'originalité en fonction de ce que vous obtiendrez pour la division.
Dans ce cas, si je regroupe par échantillon, tout redevient normal, car JMP sait désormais explicitement que les valeurs de ce tableau doivent être regroupées par échantillon, car elles sont intrinsèquement liées. S'il s'agissait d'une grande classe, ce seraient le nom, l'âge et le sexe que nous avions recherchés auparavant pour cette singularité.
Vos données varieront selon leur complexité, mais gardez toujours à l'esprit la possibilité d'atteindre ce niveau d'unicité. Je n'ai pas constaté qu'il soit possible de surregrouper lors d'une division. Si vous savez qu'une colonne est concernée, même si elle est potentiellement redondante avec votre regroupement, n'hésitez pas à l'ajouter, car il est préférable de surregrouper tout en conservant son unicité plutôt que de sous-regrouper et d'avoir des éléments manquants.
Lors d'une division, un élément à prendre en compte pour évaluer les différents niveaux de réussite est de surveiller le nombre de lignes. Si je commence avec 300 lignes, que les données sont relativement équilibrées et que chaque échantillon comporte trois longueurs d'onde, je devrais obtenir environ 100 lignes lors de la division. Si vous obtenez un nombre de lignes anormal, c'est probablement parce que JMP a fait de son mieux, mais n'a pas trouvé l'organisation exacte nécessaire pour obtenir le résultat souhaité.
C'est un signe que vous n'avez probablement pas réussi à regrouper des éléments. Soyez attentif et utilisez-le à votre avantage pour vous assurer que vos données sont correctes, afin d'éviter de vérifier 10 000 lignes de données. Vous pouvez en vérifier quelques-unes, voire trois, pour vous familiariser avec le processus, puis passer à autre chose. En procédant ainsi, le fractionnement deviendra une seconde nature et fonctionnera parfaitement pour votre travail quotidien avec JMP.
Je vais aborder brièvement la transposition, faute de temps, notamment parce que je ne l'utilise pas souvent. J'ai rencontré quelques collègues qui l'utilisent beaucoup. En gros, la transposition permet de prendre des éléments organisés de cette façon et de les retourner complètement. C'est utile dans une certaine mesure. Je ne l'utilise pas très souvent. Je pense que dans certains cas, j'ai la chance que mes données ne soient pas organisées de manière aussi bancale.
Je souhaite vous montrer le dialogue, car, encore une fois, l'unicité et le regroupement entrent en jeu avec cette étiquette et ce « by ». Cela vous permet d'indiquer à JMP comment organiser les données lorsque vous essayez de transposer vos problèmes d'appel spécifiques. Comprendre l'organisation unique de vos données vous offre une puissance accrue sur cette plateforme.
Passons maintenant à la fonction « Joindre ». C'est une autre fonction très efficace et extrêmement puissante. Nous allons aborder certains de ses éléments, puis nous passerons à l'exemple. Lorsque vous ouvrez la fonction « Joindre », elle commence par : voici la table avec laquelle je commence. C'est la table à laquelle je vais joindre. Je sélectionne ici la table à laquelle je souhaite joindre, puis l'opération passe par ici. Des colonnes s'affichent, ainsi que des options permettant de définir la manière dont je souhaite effectuer mes jointures.
Nous allons revenir à une grande classe modifiée. J'ai une autre table, une grande classe d'extension. J'ai beaucoup plus de noms, d'âges et de sexes, mais ici, j'ai la fréquence cardiaque et l'IMC. Je souhaite fusionner ces informations. Je vais dans ma table d'origine et j'utilise la fonction « Join ». Voici ma grande classe. Je souhaite la joindre à ma grande classe étendue. Par défaut, elle utilise les colonnes correspondantes, ce qui signifie que 99,9 % des jointures sont effectuées par correspondance de colonnes. Ensuite, il faut indiquer à JMP ce que l'on souhaite fusionner.
Cela dépend des différents niveaux d'unicité ou de la couche d'unicité que vous souhaitez utiliser pour la fusion. Vous pouvez sélectionner le nom dans les deux colonnes, puis cliquer sur « Correspondance », puis « Âge ». Il n'est pas nécessaire que les noms soient identiques. Vous indiquez à JMP les noms à associer. Cela n'a rien à voir avec leur nom physique.
Dans l'aperçu, vous remarquez un comportement étrange et potentiellement gênant. Une colonne apparaît désormais. Il s'agit du nom de la classe 2025 Discovery Mod Big. Vous voyez ce phénomène régulièrement avec les autres colonnes. Désormais, tous les noms de vos colonnes sont grands et énormes. C'est pratique pour vérifier vos données après la jointure, mais la correction peut être fastidieuse.
JMP propose une solution pour cela : la fusion des colonnes de même nom. Lorsque vous fusionnez des colonnes de même nom, je décoche l'option de correspondance. Vous constaterez que les colonnes de même nom sont combinées de manière cohérente. JMP a réussi à le faire même en reconnaissant que « name » et « name » sont techniquement différents à cause de la casse, mais JMP les a regroupées car il a reconnu qu'elles étaient identiques. Lorsque vous cochez l'option de fusion des colonnes de même nom, l'option de correspondance est également activée. Cela vous permet, lorsque des éléments sont en jeu, d'effectuer des correspondances entre les tables.
Ici, je fusionne souvent les colonnes de même nom et les indicateurs de correspondance. J'inclus également systématiquement, surtout lors d'une première jointure, les non-correspondances de la table principale et de la table de largeur. Je clique sur « OK » et je vais vous montrer pourquoi j'apprécie cette méthode : c'est un bon moyen de vérifier que mes données sont bien organisées.
Vous obtenez cette colonne « indicateur de correspondance ». Nous allons la développer ici. Nous voyons qu'elle indique à la fois « principal » et « largeur ». Si nous allons dans les deux, et nous allons descendre ici, cela représente des informations présentes dans les tableaux d'origine et secondaire. Vous pouvez voir que nous avons la taille et le poids d'origine, mais aussi la fréquence cardiaque et l'IMC.
Si vous avez un élément principal, sélectionnez-le tous ici. Il s'agit d'un élément présent dans le premier tableau, mais sans correspondance dans le second. Vous pouvez voir ici la taille, la taille et le poids, mais pas la fréquence cardiaque dans l'IMC.
La largeur est exactement l'inverse. Elle figurait dans le deuxième tableau, mais manquait d'éléments dans le premier. J'aime examiner les données de cette façon, car cela me permet de vérifier les éléments manquants et de m'assurer qu'ils le sont effectivement.
Dans le cas présent, j'avais 112 noms. Je n'en ai que 42 dans cette première table. Impossible d'obtenir une correspondance à 100 %. Utiliser des largeurs différentes parce que des éléments ici ne correspondent pas est parfaitement acceptable et logique. De même, certains de ces noms peuvent ne pas figurer dans la liste étendue sur laquelle nous avons appliqué les métriques supplémentaires.
Les valeurs principale et largeur, du moins dans leur concept général, conviennent ici. Elles s'alignent alors à l'endroit où elles s'imbriquent, et vous pouvez vérifier ponctuellement ce à quoi vous vous attendez. Dans la pratique, cela me semble particulièrement utile, par exemple lorsque vous menez une expérience sur une machine, et que vous disposez également d'une feuille d'exécution ou d'un élément sur lequel vous prenez des notes corrélées, par exemple des identifiants d'exécution.
Si vous effectuez cette correspondance, cela signifie des choses très spécifiques et différentes. Par exemple, vous disposez de données provenant de la machine, mais votre feuille d'exécution ne contient aucune information, ou vous disposez d'informations sur votre feuille d'exécution pour une exécution dont les données ne proviennent pas de la machine. En cas d'erreurs ou de problèmes similaires, cela peut être logique, mais il peut aussi s'agir d'une erreur de transcription lors de la saisie d'un identifiant sur la machine, ou d'autres problèmes similaires.
Être capable d'effectuer ces jointures avec des ensembles de données plus volumineux et de voir immédiatement où vos données correspondent et où elles ne correspondent pas constitue un véritable changement de jeu en termes de capacité à les décomposer et à les identifier rapidement.
Encore une fois, le nombre de rangées est un autre indicateur : 42 rangées. Si tout correspondait parfaitement, je n'en aurais que 42. Mais j'en ai beaucoup plus, notamment parce que j'ai des largeurs qui étaient ou non dans ce tableau, et puis les lignes principales. En tirer profit peut aussi vous aider à identifier un problème ou un point à approfondir.
Enfin, un petit avertissement concernant cette jointure : si vous avez une colonne portant le même nom, mais dont les informations sont différentes, je vais entrer l'âge pour simplifier et faire en sorte que cet âge soit 89. Pour une raison inconnue, cette table 89 représente un âge, et tout sera identique.
Si vous parcourez cette jointure et que vous lisez attentivement, je ne comprends pas pourquoi, lors du rappel, l'aperçu ne s'affiche pas exactement de la même manière. Je vais donc cliquer sur OK. Vous constaterez que l'âge a été écrasé dans certains cas. En fait, il ne l'était pas. C'est une bonne nouvelle. Je me demande si c'est nouveau ou si c'est corrigé uniquement sur les autres.
J'ai déjà constaté ce problème et je le modifierai en fonction de la situation. JMP a amélioré ce point, notamment dans certains cas. Mais si vous n'y prêtez pas attention, nous le revérifierons.
Cela semble avoir résolu une partie du problème, mais il faut y prêter attention, même si je me demande où sont passés mes deux fichiers. C'est un point secondaire que je traiterai en parallèle. Le point le plus important à prendre en compte est que l'âge peut être écrasé par l'autre table. Je vois souvent ce problème lorsque les données machine sont horodatées, mais comme la date d'une feuille d'exécution correspond simplement à la date d'exécution, certaines données peuvent être écrasées.
Il faut vraiment être vigilant, car il est important d'éviter que cela se reproduise à plusieurs reprises. Vous vous attendez peut-être à voir des données, mais elles n'apparaissent plus car elles sont écrasées. Ou, dans ce cas, vous vous attendiez à voir des âges individuels, mais soudain, tout le monde est octogénaire.
Cela nuit à l'efficacité et au flux de travail, surtout si vous devez remonter sept étapes en arrière pour identifier l'origine du problème. Le savoir à l'avance vous donne un peu plus de puissance. Dans ce cas, la solution la plus simple serait, si vous savez que cela représente un risque, de simplement mettre à jour le nom de la colonne ou de la supprimer complètement, selon l'importance de la situation.
J'ai compris pourquoi c'est arrivé maintenant, car je viens de mettre à jour un élément. C'est parce que, lors de mon rappel, la correspondance par âge était toujours établie, et j'ai modifié l'âge. Nous allons supprimer cela. Vous pouvez maintenant constater que cette substitution a eu lieu sur certains de vos deux profils. C'est là que cela peut vous poser problème. La solution simple est de changer ce nom. Nous reviendrons tous sur la connexion et le rappel. Vous constaterez que l'âge est manquant pour certains, mais il est présent pour d'autres. Ensuite, vous ajouterez « age_ » pour les autres profils afin de montrer qu'il n'a pas été remplacé.
Voilà comment on résout ce problème. C'est quelque chose qui m'a souvent pris au dépourvu, souvent par inadvertance. Je ne fais plus d'erreurs. Je les trouve simplement plus vite et les corrige. Ne vous en faites pas si vous les faites. Il faut du temps pour s'y habituer et, au final, on arrête rarement de les commettre. On apprend simplement à les corriger quand elles surviennent.
Ensuite, voici Update. Update est un outil phénoménal. Pour être honnête, j'ai eu une relation amour-haine pendant longtemps à ses débuts, et c'était moi, pas lui, car c'était lié aux suppositions qu'Update formule. Si vous n'y prêtez pas attention, elles peuvent vous ruiner. Plus précisément, comme nous en parlions avec cette réécriture. Je vais remettre cette page ici, et nous allons…
Apparemment, j'ai fait ça en faisant tout, mais voilà. Revenons à la liste des autres âges. Mettre à jour est en réalité une jointure, mais cela ne crée pas de table. On va dans Mettre à jour, même configuration de base. Maintenant, on veut joindre la grande classe étendue. On va faire notre appariement par nom, âge et sexe.
À ce stade du jeu, comme vous pouvez le constater dans l'aperçu, JMP émet quelques hypothèses. Il effectue uniquement une jointure interne, ce qui signifie qu'il n'inclut aucune valeur manquante des tables. Il ne fait correspondre que ce qui se trouve dans la table principale.
Deuxièmement, les colonnes portant le même nom étaient fusionnées par défaut. Si vous n'êtes pas prêt, cela peut vous coûter cher. C'est précisément ce qui m'a frappé au début, lorsque je m'habituais au fonctionnement de la mise à jour. Je ne l'ai pas trouvée dans mes données pendant un temps embarrassant, et j'ai dû revenir en arrière pour la corriger.
Sachant cela dès le départ, JMP vous offre des options supplémentaires pour simplifier les choses. Si vous avez beaucoup de données, ou si vous craignez que des éléments puissent être écrasés, vous pouvez contrôler les colonnes de la table de mise à jour à inclure. Si je sélectionne simplement les colonnes sélectionnées, je ne peux traiter que la fréquence cardiaque, par exemple, ou l'IMC, et je m'assure qu'aucune de ces colonnes supplémentaires ne soit ajoutée, au risque d'un écrasement si elles ne font pas partie de la jointure.
Ici aussi, nous plaçons des colonnes dans la table principale. Je peux n'en sélectionner aucune, et ce point d'arrêt empêche l'écrasement. Vous pouvez également autoriser une sélection dans les deux cas pour contrôler cela. Une fois que vous aurez appris à utiliser Update, c'est une fonctionnalité très pratique, mais elle comporte des inconvénients. Par exemple, je viens d'exécuter ceci, et l'IMC a été ajouté à cette table. Ma table principale a maintenant été modifiée. Si ce n'est pas ce que vous recherchez, Update n'est peut-être pas la solution idéale pour ce cas d'utilisation spécifique.
Cependant, à mesure que les gens s'habituent à faire plus de JMP et s'améliorent, le désir d'avoir moins de tables et pas plus est généralement courant, surtout quand on se fatigue et qu'on essaie de garder une trace de toutes les tables que vous avez créées, d'où vient cette table, etc.
Les petites choses que l'on peut faire pour réduire le nombre de tables sont très appréciables. Dans ce cas, Update est très efficace, surtout si j'avais trois ou quatre tables. J'avais une autre table contenant d'autres indicateurs sur les personnes. Si je devais effectuer une jointure avec chacune de ces tables individuellement, je créerais trois ou quatre nouvelles tables supplémentaires pour empiler cette jointure. Update me permet de tout regrouper dans une seule table.
Autre chose que nous n'aborderons pas ici, mais qu'il serait intéressant d'explorer si vous en avez l'occasion : une jointure virtuelle qui permet de joindre plusieurs tables sans qu'elles ne soient jointes. C'est vraiment génial. De nombreuses présentations ont été faites par des employés de JMP, et il devrait y avoir des webinaires pour expliquer cela plus en détail. C'est une fonctionnalité vraiment amusante à utiliser quand on a du temps. Mais Update joint cette table à votre table principale, et le résultat est vraiment satisfaisant.
Nous allons maintenant aborder un sujet beaucoup plus simple : concaténer. Concaténer consiste à empiler des tables les unes sur les autres.
C'est exactement ce que fait le module. En fait, je peux simplement utiliser ce module Discovery. Nous allons maintenant concaténer. Nous allons lister toutes les tables à concaténer. Si je souhaite ajouter la classe étendue Big ici, elles seront superposées. Je pourrais ajouter à la première table si je le souhaite pour minimiser le nombre de tables.
Vous pouvez également créer une colonne source. Je vous le recommande, surtout si vous créez une table séparée, car cela vous permet de contrôler la provenance des données. En cliquant sur OK, vos données sont mises à jour, superposées et je peux voir précisément quelles lignes proviennent de quelle table, ce qui est extrêmement efficace.
Les utilisateurs se heurtent généralement à la concaténation lorsque les données ne s'affichent pas exactement comme prévu ou qu'elles sont mal placées. Dans ce cas précis, j'appellerai cela une métrique, ou plutôt… je me demande si cela fonctionnera simplement avec une autre façon de dire la même chose.
Lorsque je fais la concaténation, vous verrez que vous aurez deux colonnes ici. Ceci est un exemple où elles sont clairement différentes. Cependant, JMP se soucie, du moins historiquement, d'après ce que j'ai pu constater, de la casse ou des fautes de frappe, etc., qui peuvent perturber l'organisation des données. Cela pourrait être dû à une convention de nommage différente ou à des fautes de frappe, lorsque des données saisies manuellement sont mal placées.
Dans un cas comme celui-ci où l'IMC (indice de masse corporelle) ne se produit qu'une seule fois, ces corrections sont assez simples. Voici une petite astuce amusante : cliquez sur l'une de ces cellules vides, faites un clic droit et sélectionnez « Cellules correspondantes » pour sélectionner toutes les cellules vides.
Je peux maintenant inverser cette sélection : tous les éléments que je souhaite placer ici sont sélectionnés. Je peux les copier, puis, en sélectionnant l'en-tête de cette colonne, ils restent sélectionnés. Je peux ensuite les coller. L'erreur est maintenant corrigée. Je peux supprimer cette colonne. C'est la méthode la plus rapide.
Si cela se produit sur une douzaine de colonnes, c'est moins rapide et plus compliqué. La meilleure façon de résoudre ce problème, si cela se produit, est de modifier le nom de la colonne. Mais encore une fois, selon ce que vous faites et où vous en êtes dans une étape du processus, il existe de nombreuses façons de procéder. Il n'existe pas de solution idéale.
Mais c'est le principal problème que je constate lors de la concaténation : avec beaucoup de colonnes, les données ne sont plus là où elles devraient être. C'est là que ça devient problématique. Mais à part ça, la concaténation fonctionne extrêmement bien et c'est un excellent moyen de rassembler rapidement de nombreuses tables en une seule.
Nous approchons maintenant de la fin des temps. Je vais les aborder brièvement ici, sans donner beaucoup d'exemples précis, notamment parce que je ne les ai pas beaucoup utilisés pour développer une multitude de trucs et astuces. Mais je les ai suffisamment utilisés pour savoir qu'ils sont utiles et méritent d'être étudiés et utilisés.
JMP Query Builder vous permet de créer des requêtes SQL à partir de plusieurs tables de données disponibles. Vous pouvez également utiliser JMP Query Builder avec des tables de données stockées dans des bases de données externes et importer toutes ces données dans JMP. Vous pouvez combiner ces opérations avec les tables disponibles, ce qui est très pratique.
Modèle de données manquantes. J'ai vu plusieurs présentations intéressantes sur ce modèle. Je ne l'utilise pas réellement au quotidien, notamment parce que j'ai la chance de ne pas rencontrer beaucoup de problèmes de données manquantes.
De plus, le modèle de données manquantes est apparu bien des années après que je me sois habitué à exploiter les données d'une manière totalement différente pour identifier les modèles de données manquantes. Je n'ai tout simplement pas encore intégré de modèle de données manquantes à mon arsenal. Je me dis sans cesse que je dois l'expérimenter davantage, car c'est une façon vraiment amusante d'analyser les données quand on voit d'autres personnes l'utiliser.
Comparer des tables de données. Voici une fonction amusante… Je vais vous la montrer rapidement. Elle vous permet de sélectionner quelques tables et de les comparer. JMP essaiera de bien faire correspondre leurs noms. Vous pouvez voir ici que c'est fait, et vous pouvez corriger cela. Mais si vous cliquez simplement sur « Comparer », l'outil affiche toutes les différences dans la table.
Comme je le vois ici, je ne suis pas sûr de ce que cela me montre. C'est là que je dois jouer davantage pour me familiariser avec. Mais c'est une façon amusante, au moins, de prendre deux tables et de voir si tout est identique. Souvent, je vérifie si j'ai modifié les données de manière involontaire.
Lorsqu'on entre dans le vif du sujet, on constate que nombre de ces options entrent en jeu. J'encourage chacun à tester cette approche pour voir ce qui se passe dans ses propres cas d'utilisation, car c'est une bonne plateforme, et je ne l'ai pas encore exploitée au maximum de ses possibilités. Mais JMP nous offre un avantage considérable, que je ne pourrais pas exploiter seul.
Enfin, anonymiser, la dernière option de cette liste. En gros, cela prend le tableau devant vous et, en cliquant sur OK, l'anonymise. Personne ne sait ce que cela signifie. C'est tout l'intérêt de créer des tableaux de données dépourvus d'informations compréhensibles ou assimilables par d'autres.
Si vous avez des informations propriétaires dans une table, mais que vous souhaitez l'aide de JMP pour résoudre le problème que vous rencontrez, vous pouvez anonymiser votre table, puis recréer votre problème avec ces informations et pouvoir les partager en toute sécurité avec d'autres personnes du support JMP, sans avoir à vous soucier d'enfreindre les règles de propriété intellectuelle propriétaires que vous pourriez avoir dans votre entreprise car, désormais, personne ne sait d'où viennent ces données et ce qui leur arrive.
C'est une information vraiment intéressante ; JMP permet également de rendre cela assez rapide et facile à utiliser. N'hésitez pas à l'expérimenter. C'est une façon vraiment amusante de faire les choses.
Je pense que cela nous amène à la fin du menu « Tables ». Je tiens à remercier JMP et tous ceux qui ont participé à la série Discovery de m'avoir donné l'occasion de partager cet événement, car c'est un sujet très intéressant à aborder. Je pense que c'est un sujet qui sera utile à beaucoup de personnes tout au long de leur parcours JMP. Merci beaucoup. C'est tout pour aujourd'hui.