Salut,
Peut-être que vous pouvez m'aider à comprendre ce que je fais mal ici.
J'ai le tableau de données de jouets suivant :

J'ai eu du mal à affiner une liste de noms de colonnes de caractères provenant du script suivant.
//get unique column names
cols = Current Data Table() << getColumnNames(Character);
//del columns I don't want
DELCOLS = {"Column 5", "Column 6"};
unique_col_names = Associative Array(cols) << Remove(Associative Array(DELCOLS)) << get keys;
//make a pop-up window
nw = New Window( "Set a Value",
<<MODAL></MODAL>
Ce que j'obtiens est ce qui suit dans la fenêtre contextuelle modale résultante.

Je souhaite que la fenêtre contextuelle suivante n'ait que les éléments suivants :

Je pense que mon problème est peut-être dû à une lacune dans ma connaissance des tableaux associatifs que j'ai du mal à comprendre complètement, même si ce que dit le guide de script JMP à propos des clés de tableau associatif et des fonctions remove from, remove, loc et contains faire sens.
Je veux m'assurer que les colonnes qui restent dans la liste résultante que j'ai utilisée dans la fenêtre de modèle peuvent être renommées par l'utilisateur dans l'ensemble de données d'origine, de sorte que les noms de colonnes que je veux supprimer resteront les mêmes. De plus, la disposition des colonnes dans la table de données est la même, mais le tableau associatif réorganise les valeurs dans l'ordre croissant.
J'ai déjà utilisé les méthodes suivantes, selon ces forums, et il doit y avoir quelque chose que je ne vois pas ici car je suis nouveau dans le langage JSL.
- supprimer des éléments d'une liste
https://community.jmp.com/t5/Discussions/remove-elements-in-a-list/td-p/50865
- obtenir le nom de la colonne à partir du numéro de colonne et saisir les colonnes que j'ai sélectionnées dans une liste à utiliser.
https://community.jmp.com/t5/Discussions/How-to-get-column-number-from-column-name-JMP/mp/5988
J'ai joint le fichier de jeu de données de jouets qui comprend le script que j'ai référencé ci-dessus.
Voici comment je résoudrais ce problème
Names Default To Here( 1 );
//get unique column names
cols = Current Data Table() << getColumnNames( Character, string );
//del columns I don't want
DELCOLS = {"Column 5", "Column 6"};
For( i = 1, i <= N Items( DELCOLS ), i++,
Try( Remove From( cols, Contains( cols, DELCOLS[i] ) ) )
);
unique_col_names = cols;
//make a pop-up window
nw = New Window( "Set a Value",
<<MODAL></MODAL>Merci beaucoup! Cela a très bien fonctionné dans mon projet et j'ai également appris ce qu'est la fonction Try().