<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Salut,
Je ne parviens pas à sélectionner des colonnes dans JMP10. Cet exemple est extrait du guide de script JMP10:
/ *
dt = Open ("$ SAMPLE_DATA / Big Class.jmp");
cc = dt << Obtenir les noms de colonne (Continu);
ncols = N éléments (cc);
Pour (i = 1, i <= ncols, i ++,
cc << Ensemble sélectionné (1)
)
* /
Cependant, il génère l'erreur suivante dans le journal:
/ *
Send Expects Scriptable Object dans l'accès ou l'évaluation de 'Send', cc << Ensemble sélectionné (1)
Dans le script suivant, erreur marquée par / * ### * /
dt = Open ("$ SAMPLE_DATA / Big Class.jmp");
cc = dt << Obtenir les noms de colonne (Continu);
ncols = N éléments (cc);
Pour (i = 1, i <= ncols, i ++,
cc << / * ### * / Définir la sélection (1) / * ### * /
)
* /
Aucune suggestion?
Merci!
Merci blackeneth,
Vous avez raison. Mon code fait partie d'un script plus grand avec plusieurs tables s'ouvraient et JMP devenait confus. " As Column (dt, name) "a fait l'affaire. Merci!
Ha, si je copie votre script dans JMP 10.0.2 et l'exécute, cela fonctionne! Sans erreur!
Peut-être avez-vous plusieurs tables ouvertes et JMP est en train de confondre qui est la "actuelle". C'est, ou c'est interpréter comme référence de ligne.
Quoi qu'il en soit - demandez-vous - que contient la variable cc? C'est une liste de références de colonnes.
show (cc);
cc = {taille, poids};
mais alors lancez ceci:
show (cc [1]);
show (cc [2]);
cc [1] =: hauteur;
cc [2] =: poids;
Donc, votre boucle, à son tour, exécute ces commandes:
: hauteur << ensemble sélectionné (1);
: poids << ensemble sélectionné (1);
Je pense que l'utilisation de la fonction As Column (dt, name) est plus claire et plus infaillible:
dt = Open ("$ SAMPLE_DATA / Big Class.jmp");
cc = dt << Obtenir les noms de colonne (Continu);
show (cc);
ncols = N éléments (cc);
Pour (i = 1, i <= ncols, i ++,
sous forme de colonne (dt, cc ) << Ensemble sélectionné (1)
)
Ce qui suit fonctionnera également:
dt = Open ("$ SAMPLE_DATA / Big Class.jmp");
cc = dt << Obtenir les noms de colonne (Continu);
show (cc);
ncols = N éléments (cc);
Pour (i = 1, i <= ncols, i ++,
y = cc ;
dt: y << Ensemble sélectionné (1)
)