Comment diviser le tableau et conserver toutes les colonnes avec des informations correctes ?J'essaie de diviser une table par "Méthode", donc chaque méthode devient une nouvelle colonne, avec les valeurs associées. Mais je souhaite conserver toutes les autres colonnes, ID et Nom.
Tableau initial :

Répartition souhaitée :
ou

L'un ou l'autre des formats illustrés ci-dessus fonctionnerait pour mes besoins.
Cependant en utilisant la fonction split :

Ce qui me donne des résultats erronés :

Par exemple, ID = 3, B = 222 a été réalisé par Jon et non par Alice. Ainsi, les valeurs de ID et Name ne correspondent pas toujours à la valeur des colonnes de méthode.
Existe-t-il un moyen intégré pour y parvenir ? Il semble que ce soit un dysfonctionnement de la fonction split.
Merci
Re : Comment diviser un tableau et conserver toutes les colonnes avec des informations correctes ?Salut,
Le "1" est à l'endroit où vous placeriez normalement une colonne. L'effet est une colonne de uns. Je ne sais pas si cette technique est documentée en soi. C'est cependant une astuce intéressante à connaître et je l'utilise tout le temps en conjonction avec des sommes cumulées pour faire ce que j'ai fait ici.
Acclamations,
Brady
Re : Comment diviser un tableau et conserver toutes les colonnes avec des informations correctes ?Désolé, j'essaie juste de comprendre le but de "1" dans votre formule ( col somme cumulée ( 1, :ID, :Method, :Name) ) . Est-ce l'incrément à ajouter pour chaque ligne où la même combinaison d'ID, de méthode et de nom apparaît ?
J'ai vérifié l'index des scripts, mais je n'ai pas trouvé d'informations me disant ce que fait "1". J'ai testé un peu la formule et j'ai conclu qu'il s'agissait d'un incrément. Est-ce exact? Si oui, où dans l'index des scripts ou où puis-je trouver ces informations autrement que dans ce fil ? (Je m'apprends juste à écrire un script, alors excusez les questions stupides.)
Re : Comment diviser un tableau et conserver toutes les colonnes avec des informations correctes ?Merci pour l'avertissement sur mon erreur : j'ai modifié le message incriminé, il contient donc maintenant la formule correcte.
Acclamations,
Brady
Re : Comment diviser un tableau et conserver toutes les colonnes avec des informations correctes ?En fait, là où vous dites groupe, vous parlez de méthode. Cela fonctionne parfaitement merci !Re : Comment diviser un tableau et conserver toutes les colonnes avec des informations correctes ?Merci. Je suppose que dans votre réponse, le ":group" ne devrait pas être là ?
De plus, lorsque je l'essaye sans :group, je n'obtiens pas les mêmes chiffres que pour la réponse de txnelson.
Pourriez-vous m'indiquer ce qui ne va pas ?

Merci
Re : Comment diviser un tableau et conserver toutes les colonnes avec des informations correctes ?EDIT : J'ai mal tapé l'un des noms de colonne, "Méthode", comme "groupe" dans la version originale de cette réponse. Cette modification corrige cette erreur.
Excuses,
Brady
*****************************************
Oh, bonne prise, je n'ai pas vu cette duplication. Dans ce cas, oui, vous avez besoin d'une autre colonne.
La façon dont je crée cette nouvelle colonne "différenciateur" mentionnée par txnelson - sans décalage, vous n'avez donc pas à trier le tableau - est avec la formule :
col somme cumulée ( 1, :ID, :Method, :Name)
Acclamations,
Brady
Re : Comment diviser un tableau et conserver toutes les colonnes avec des informations correctes ?Si vous n'avez pas de valeurs en double pour ID et Nom, vous pouvez les placer dans la zone de sélection Groupe de la plateforme Split et obtenir les résultats souhaités, mais comme vous avez deux entrées pour Bob dans le groupe ID 1, vous devez créer une nouvelle colonne qui différenciera pour cela.Alors, comment j'ai fait ça, c'est
- J'ai trié la table de données par ID et nom
- J'ai créé une nouvelle colonne de formule appelée Count et utilisé la formule
If( Row() == 1, counter = 0 );
If( :ID == Lag( :ID ) & :Method == Lag( :Method ) & :Name == Lag( :Name ),
counter++,
counter = 1
);
counter;
- Il a créé les résultats suivants

- J'ai ensuite divisé le tableau en utilisant l'ID, le nom et le nombre dans la zone de sélection du groupe.

- Ce qui m'a donné les résultats

Veuillez noter que j'ai saisi une valeur incorrecte dans le tableau de données d'origine pour Bob de 1223 et qu'elle aurait dû être 123.
Re : Comment diviser un tableau et conserver toutes les colonnes avec des informations correctes ?Bonjour Augustin,
Dans le menu de lancement de la boîte de dialogue, attribuez aux colonnes "ID" et "Nom" le rôle "Groupe".
Plus d’informations peuvent être trouvées sur la fonction split ici : https://www.jmp.com/support/help/en/15.1/index.shtml#page/jmp/examples-of-splitting-columns.shtml
Acclamations,
Brady