Sélection de lignes par étiquettes de valeurJe voudrais créer un script de sélection de ligne en fonction des étiquettes de valeur dans une colonne.À titre d'exemple, l'ensemble de données Big Class a une étiquette de valeur où F=Female et M=Male.Autant que je sache, je ne peux pas écrire du JSL pour faire une sélection de colonne par "Femme".Est-ce que quelqu'un sait comment faire cela en JSL ?

Mon plus gros problème est que j'ai plusieurs valeurs qui ont la même étiquette, mais au lieu d'essayer de sélectionner toutes ces valeurs individuellement, j'aimerais simplement sélectionner l'étiquette.
Re : Sélection de ligne par étiquettes de valeurC'est aussi fantastique. Je n'arrivais pas vraiment à comprendre comment récupérer les étiquettes, mais les jeter dans un journal est génial. Mon ensemble de données actuel contient plus de 2 MM d'enregistrements et cela est 4 fois plus rapide à terminer. Merci beaucoup d'avoir envoyé ceci.Re : Sélection de ligne par étiquettes de valeurVoici une solution différente à votre question.L'exemple jsl crée simplement une nouvelle colonne qui contient les valeurs des étiquettes de valeur, à partir desquelles vous pouvez ensuite créer vos fonctions Select Where().Puisqu'il n'existe pas de fonction pour créer directement la nouvelle colonne, le code utilise une fonctionnalité dans laquelle JMP déplacera le formulaire d'étiquette de valeur d'une colonne si la colonne est copiée dans un journal JMP.Voir le code ci-dessous pour les détails
names default to here(1);
dt=open("$SAMPLE_DATA/big class.jmp");
// Create the Value Labels for the Sample data table
dt:sex << set property("value labels", {"F" = "Female", "M" = "Male"} );
// Select the column of interest
dt<<GO to=""></GO>

Re : Sélection de ligne par étiquettes de valeurmerci Marc.J'apprécie la réponse rapide.
Re : Sélection de ligne par étiquettes de valeurUtilisez cet exemple qui illustre une façon d’inverser la référence de l’étiquette à la valeur. (Remarque : j'ai ajouté manuellement la propriété de la colonne Value Label à la colonne de données sur le sexe afin qu'il y ait quelque chose avec lequel travailler. Cette étape n'est pas incluse dans le script. Vous ne devriez pas en avoir besoin car votre colonne de données possède déjà cette propriété.)
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
label = Arg( dt:sex << Get Property( "Value Labels" ), 1 );
For( i = 1, i <= N Items( label ), i++,
If( Contains( Arg( label[i], 2 ), "female" ),
value = Arg( label[i], 1 );
Break();
);
);
dt << Select Where( :sex == value );