Ajouter un préfixe aux noms de colonnes (script)Salut
J'ai un ensemble de données JMP et je souhaite ajouter le même préfixe à tous les noms de colonnes de cet ensemble de données, mon code ci-dessous ne fait pas tout à fait ce que je veux.
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt2 = dt << For( i = 25, i <= N Cols( dt ), i++,
cName = Column( dt, i ) << Get Name;
newname = cName || "Prefix_";
Column( dt, i ) << Set Name( newname );
);
Maintenant, un deuxième scénario :
Imaginez que la colonne « sexe » dans « Big Class » contienne uniquement des F (ou Ms).
Comment puis-je accéder à ce contenu et l'utiliser comme préfixe à l'aide d'une variable utilitaire/macro dans le code ci-dessus ?
Bravo, débutant
Re : Ajouter un préfixe aux noms de colonnes (script)Je suis désolé, Marc. Je n'ai pas remarqué que le tampon ne contenait pas = coller la variante de code JSL la plus récente.
Quoi qu'il en soit, je l'ai un peu modifié...
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
prefix = dt:sex[1];
For( i = 1, i <= N Cols( dt ), i++,
cName = Column( dt, i ) << Get Name;
newname = prefix ||"_"||cName;
Column( dt, i ) << Set Name( newname ); );
Re : Ajouter un préfixe aux noms de colonnes (script)Premièrement, For() est une fonction, et non un message pour une table de données, qui ne renvoie pas de référence à une nouvelle table de données. Deuxièmement, pourquoi commencer l’index de boucle à 25 ? Troisièmement, pourquoi concaténer un préfixe après le nom? Ce résultat est un suffixe.
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
prefix = dt:sex[1];
For( i = 1, i <= N Cols( dt ), i++,
cName = Column( dt, i ) << Get Name;
newname = prefix || cName;
Column( dt, i ) << Set Name( newname );
);