recoder le nom de plusieurs colonnes avec regex
Salut tout le monde!
J'essaie d'appliquer un remplacement de regex à une fonction Recode Column dans JSL afin que le script parcoure toutes les colonnes et applique la regex à toutes, le cas échéant.
Voici le code que j'ai testé :
Names Default To Here(1);
dt = Current Data Table();
//Create list of columns to be recoded
ColN = dt << Get Column Names();
// Iterate over the list of columns and recode each one
For Each({listitem}, ColN,
dt << Recode Column(
As Column(listitem),
{Regex(_rcNow, "erm", "testtest", GLOBALREPLACE)},
Target Column(Column(listitem))
);
);J'obtiens cette erreur :
Name Unresolved : LocalTime dans l'accès ou l'évaluation de 'LocalTime' , LocalTime/*###*/
LocalTime est la première colonne sur 13 colonnes de mon jeu de données.
J'apprécierais toute aide!
ScriptRe : recoder le nom de plusieurs colonnes avec regexJe viens de réaliser que j'ai utilisé Recode Column et non une fonction qui va renommer le nom de la colonne...
Existe-t-il une fonction dédiée pour recoder un nom de colonne ? y a-t-il un autre moyen de le réaliser?
Re : recoder le nom de plusieurs colonnes avec regexUne liste, lorsqu'elle est spécifiée, n'exécutera aucun élément de la liste.Par conséquent, le codeur doit forcer le développement complet de la liste avant de la transmettre à JMP.Vous trouverez ci-dessous une façon de traiter le problème
Names Default To Here( 1 );
dt = Current Data Table();
//Create list of columns to be recoded
ColN = dt << Get Column Names(string);
// Iterate over the list of columns and recode each one
For Each( {listitem}, ColN,show(listitem);
Eval(
Substitute(
Expr(
dt << Recode Column(
As Column( listitem ),
{Regex( __rcNow__, "erm", "testtest", GLOBALREPLACE )},
Target Column( Column( listitem ) )
)
),
Expr( __rcNow__ ), listitem
)
)
);