Comment évaluer une matrice à la volée?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Je suis sûr qu'il existe une réponse simple à ce problème mais je ne peux pas le comprendre. J'essaie de calculer la distance entre deux objets à l'aide d'une matrice de distance. Je ne parviens pas à faire fonctionner le code JSL suivant:
dt = Open (dist matrix.jmp);
m = dt << Obtenir toutes les colonnes en tant que Matrix ();
dt2 = Open (students.jmp);
col = Column ("Préfet No");
B = col << Getasmatrix;
n = nrow (dt2);
a = j (n, 1,0);
pour (i = 1, i <= n, i ++, a = m [b , 4]);
montrer (a);
Je continue à avoir une erreur lors de l'évaluation de m [,]. J'ai essayé Eval et d'autres choses mais ça ne marche pas.
Quelqu'un peut-il aider?
Re: Comment évaluer une matrice à la volée?J'ai sauvegardé mon jeu de données afin de l'exceller et je l'ai ramené dans JMP. Maintenant, ce jeu de données est transformé dans une matrice dans le bon ordre. Je dois avoir réinitialisé l'ordre par défaut des colonnes lorsque je l'ai recréé dans JMP. Alors maintenant, tout fonctionne. Merci pour l'aide.
Re: Comment évaluer une matrice à la volée?Vous avez un exemple de jeu de données? J'en ai eu un et j'ai essayé le code suivant, et l'ordre était correct. Cela a remplacé les valeurs de caractères par «1», ce qui correspond à ce à quoi je m'attendais.
dt = table de données actuelle ();
m = dt << Obtenir toutes les colonnes en tant que Matrix ();
Montre m);
Re: Comment évaluer une matrice à la volée?J'ai compris quelle était l'erreur principale. Certaines des lignes avaient des valeurs manquantes et lorsque JMP a tenté d'évaluer l'indice manquant, il a bombardé. J'ai donc utilisé le code suivant:
pour ( je = 1 , je <= n , je ++, si (( ne pas ( est manquant ( UNE [ je ]))) , C [ je ] = m [ UNE [ je ] , 8 ] , C [ je ] = . )) ;
Ça fonctionne bien.
Maintenant, mon seul problème est que lorsque j'utilise
m = dt << Obtenir toutes les colonnes en tant que Matrix ();
La matrice suivante m n’est pas dans l’ordre dans lequel je l’ai dans le jeu de données. Donc, essayant de comprendre comment garder l'ordre d'origine. Des idées?