Re : JMP Script : Création d'une nouvelle listeSi vous avez JMP16 + ci-dessous est une option en utilisant Filter Each et en vérifiant si la colonne n'a que des valeurs manquantes avec IsMissing
Names Default To Here(1);
input_list = {"height", "Weight", "Age"};
dt = New Table("Untitled 6",
Add Rows(2),
Compress File When Saved(1),
New Column("_LimitsKey", Character, "Nominal", Set Values({"_UCL", "_LCL"})),
New Column("height", Numeric, "Continuous", Format("Best", 12), Set Values([54, 72])),
New Column("Weight", Numeric, "Continuous", Format("Best", 12), Set Values([80, 150])),
New Column("Age", Numeric, "Nominal", Format("", 16), Set Values([., .]))
);
new_list = Filter Each({list_val}, input_list,
found_values = Sum(!IsMissing(dt[0, list_val]));
found_values > 0;
);
show(new_list);
L'ajout d'impressions de débogage dans Filter Each peut être utile pour comprendre ce qui se passe. Tel que
Show(dt[0, list_val]);
Show(IsMissing(dt[0, list_val]));
Show(!IsMissing(dt[0, list_val]));
show(found_values);
Il existe également de nombreuses autres façons de le faire (comme la plupart du temps avec jmp)
Re : JMP Script : Création d'une nouvelle listeSuper, ça marche bien ! Merci beaucoup !
Je voudrais implémenter une condition if basée sur ceci:
Si la colonne Y est incluse dans le list_val créé, alors...
Comment écrire cette condition ?
If (Eval(Y) <FONT color="#FF0000">!=</FONT> list_val,
...
Je pense que le != n'est pas adapté...
Une idée?
Re : JMP Script : Création d'une nouvelle listeUtiliser Contient() avec If() pour vérifier si l'élément est trouvé dans une liste
Contains({"a","b","c"}, "b");
ou vous pouvez utiliser Contient l'élément()
Contains Item("b", {"a","b","c"});Re : JMP Script : Création d'une nouvelle listeMerci pour votre réponse,
Cela devrait fonctionner mais JMP n'aime pas l'Eval(Y) et renvoie toujours 0 :
r=Contains(list_val, Eval(Y))
Pour information, le Y est fait comme ceci :
Y = concat(Y," (ppm)");
Une idée?
Sébastien
Re : JMP Script : Création d'une nouvelle listeJe ne sais pas exactement ce que vous essayez de faire ? Pourquoi utilisez-vous Eval ? Habituellement, il est plus facile de gérer les noms de colonne en tant que chaînes, puis lorsque vous en avez besoin, convertissez-les en références de colonne d'une manière ou d'une autre
Re : JMP Script : Création d'une nouvelle listeJ'utilise Eval car il est basé sur la sélection de l'utilisateur, puis sur la concaténation :
Y = concat(Y," (ppm)");
Ensuite, je dois déterminer si cette sélection d'utilisateurs peut être trouvée dans la liste :
r=Contains(list_val, Eval(Y))
j'ai essayé ça aussi
r=Contains(list_val, Y)
Mais aussi toujours retourner 0...
JMP Script : Création d'une nouvelle listeBonjour à tous,
J'ai créé une liste nommée Y_list contenant des noms de variables. À partir de cette liste, je voudrais créer une nouvelle liste, contenant uniquement les noms de variables contenant des valeurs dans l'ensemble de données.
Exemple:
Y_list contient {"taille", "Poids", "Âge"}
| _LimitesClé | hauteur | Poids | Âge |
| _UCL | 54 | 80 | |
| _LCL | 72 | 150 | |
Comme il n'y a pas de valeur dans la ligne Age, je voudrais créer une nouvelle liste contenant uniquement des noms de variables contenant des données :
Y_new_list ==> {"taille", "Poids"}
Cependant, je ne sais pas comment faire cette nouvelle liste avec le script JMP.
Avez-vous une suggestion pour m'aider?
Merci beaucoup
Sébastien
Modélisation statistique avancéeAutomatisation et scripts