Qu'est-ce qui a inspiré cette demande de liste de souhaits ?
J'essaie de copier le script créé par Recode et je me rends compte que ce n'est même pas proche de ce que je pourrais réaliser avec JSL et des fonctions simples déjà fournies par JMP.
Quelle est l’amélioration que vous aimeriez voir ?
Mettre à jour les méthodes utilisées dans Recode pour utiliser des méthodes plus modernes. Il existe de nombreux exemples, mais en voici un utilisant des codes de valeur (le problème survient généralement lorsque Recode commence à relayer les valeurs de la carte et que toutes les valeurs sont codées en dur).

Cela créera du code désordonné
// Recode column: name
Local({dt},
dt = Data Table("Big Class");
dt << Begin Data Update;
dt << Recode Column(
dt:name,
{Num(_rcNow), Map Value(
_rcOrig,
{"ALFRED", 1, "ALICE", 2, "AMY", 3, "BARBARA", 4, "CAROL", 5, "CHRIS", 6,
"CLAY", 7, "DANNY", 8, "DAVID", 9, "EDWARD", 10, "ELIZABETH", 11,
"FREDERICK", 12, "HENRY", 13, "JACLYN", 14, "JAMES", 15, "JANE", 16,
"JEFFREY", 17, "JOE", 18, "JOHN", 19, "JUDY", 20, "KATIE", 21, "KIRK",
22, "LAWRENCE", 23, "LESLIE", 24, "LEWIS", 25, "LILLIE", 26, "LINDA", 27,
"LOUISE", 28, "MARION", 29, "MARK", 30, "MARTHA", 31, "MARY", 32,
"MICHAEL", 33, "PATTY", 34, "PHILLIP", 35, "ROBERT", 36, "SUSAN", 37,
"TIM", 38, "WILLIAM", 39},
Unmatched(_rcNow)
)},
Update Properties(1),
Target Column(:name)
);
dt:name << Remove Value Labels;
dt:name << Value Labels(
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39},
{"ALFRED", "ALICE", "AMY", "BARBARA", "CAROL", "CHRIS", "CLAY", "DANNY",
"DAVID", "EDWARD", "ELIZABETH", "FREDERICK", "HENRY", "JACLYN", "JAMES",
"JANE", "JEFFREY", "JOE", "JOHN", "JUDY", "KATIE", "KIRK", "LAWRENCE",
"LESLIE", "LEWIS", "LILLIE", "LINDA", "LOUISE", "MARION", "MARK", "MARTHA",
"MARY", "MICHAEL", "PATTY", "PHILLIP", "ROBERT", "SUSAN", "TIM", "WILLIAM"}
);
dt << End Data Update;
);
alors que cela pouvait être fait avec une seule ligne (depuis JMP17) :
dt:name << Labels to Codes;
Un exemple de méthodes difficiles à utiliser en dehors du recodage est le regroupement de valeurs similaires.

Et nous finirons avec une valeur de carte au lieu d'un joli script de « regroupement »
Names Default To Here(1);
Local({dt},
dt = Data Table("Big Class");
dt << Begin Data Update;
For Each Row(
dt,
dt:name[] = Map Value(dt:name, {"MARY", "MARK"}, Unmatched(dt:name))
);
dt << End Data Update;
);
Je peux écrire un script pour le faire moi-même (et je l'ai fait), mais ce serait formidable qu'il soit facilement exposé aux utilisateurs via un script créé par JMP.
Pourquoi cette idée est-elle importante ?
Les utilisateurs peuvent capturer un code plus efficace avec moins de valeurs codées en dur