Comment implémenter un excel comme VLOOKUP en utilisant JSL?Comment trouver les noms sportifs des élèves dans la table "big class families.jmp" en fonction des noms des élèves dans la table "Big Class.jmp".
et ajoutez des colonnes dans la table "Big Class.jmp" à afficher. Merci beaucoup !
d2 = Open( "$SAMPLE_DATA/big class families.jmp" );
d1 = Open( "$SAMPLE_DATA/Big Class.jmp" );

Re : Comment puis-je implémenter un Excel comme VLOOKUP en utilisant JSL ?un bon moyen, merci!Re : Comment puis-je implémenter un Excel comme VLOOKUP en utilisant JSL ?Il existe plusieurs façons. L'une consiste simplement à supprimer les lignes indésirables de la table empilée.
d1 = Open("$SAMPLE_DATA/Big Class.jmp");
d2 = d1 << Stack(Columns(:age, :sex, :height, :weight));
d2 << delete rows(d2 << get rows where(:name != "MARION" & :name != "JUDY"));
Ou créez simplement un sous-ensemble. L'exemple ci-dessous est sans empilement (dans JMP, c'est rarement une bonne idée de mélanger des variables très différentes dans la même colonne).
d1 = Open("$SAMPLE_DATA/Big Class.jmp");
d1 << Subset(rows(d1 << get rows where(:name == "MARION" | :name == "JUDY")));
Re : Comment puis-je implémenter un Excel comme VLOOKUP en utilisant JSL ?Merci. C'est un moyen très efficace. Je garderai ça à l'esprit.
Mais que se passe-t-il si j'ai seulement besoin de code pour extraire les données des huit noms de ligne que j'ai donnés ?
Cela vous dérange, merci !
Re : Comment puis-je implémenter un Excel comme VLOOKUP en utilisant JSL ?Il semble que vous vouliez empiler des colonnes. Explore le Empiler() commande. Cependant, dans votre exemple, vous avez des colonnes empilées de différents types de données (caractère et numérique), qui ne fonctionneront que si les types de données sont d'abord harmonisés.
d1 = Open("$SAMPLE_DATA/Big Class.jmp");
For(i = 1, i <= N Col(d1), i++,
Column(d1, i) << data type("Character")
);
d1 << Stack(Columns(:age, :sex, :height, :weight));
Re : Comment puis-je implémenter un Excel comme VLOOKUP en utilisant JSL ?Veuillez continuer vos conseils : comment extraire la valeur en faisant correspondre les deux noms simultanément, comme la fonction de décalage dans Excel. Merci beaucoup !
d1 = Open("$SAMPLE_DATA/Big Class.jmp");
d2 = New Table( "offset",
Add Rows( 8 ),
New Column( "name",
Character,
"Nominal",
Set Values( {"MARION", "MARION","MARION","MARION", "JUDY", "JUDY", "JUDY", "JUDY"} )
),
New Column( "obj",
Character,
"Nominal",
Set Values( {"sex", "age", "weight", "height", "sex", "age", "weight", "height"} )
)
);

Re : Comment puis-je implémenter un Excel comme VLOOKUP en utilisant JSL ?C'est très utile. Merci beaucoup!Re : Comment puis-je implémenter un Excel comme VLOOKUP en utilisant JSL ?Update() en faisant correspondre les colonnes fonctionne bien pour cette tâche. Soit manuellement (Menu Tables) soit par script.
Exemple:
d2 = Open("$SAMPLE_DATA/big class families.jmp");
d1 = Open("$SAMPLE_DATA/Big Class.jmp");
d1 << Update(
With(d2),
Match Columns(:name = :name),
Add Columns from Update table(:sports)
);