Les 6 premières lignes du script ci-dessous fonctionnent comme prévu, avec le résultat copié ci-dessous.
Ensuite, j'ai essayé de stocker les valeurs de ces variables dans une liste, ce qui n'a pas fonctionné. Il semble que les noms de variables au lieu des valeurs aient été stockés. Comment stocker les valeurs des variables dans la liste ? Merci!
dt = new table("my table", new column("X", set values({-0.35, 0.15, 0.3}) ) );
dt << new column("Y", set values({300, 250, 200}) );
xmean = col mean (:X);
ymax = col max(:Y);
ymin = col min(:Y);
print (xmean, ymax, ymin);
dtsum = {xmean, ymax, ymin};
print (dtsum);
if (dtsum[1] < 0, print (dtsum[2]), print(dtsum[3]));
Les sorties:
0.0333333333333333
300
200
{xmean, ymax, ymin}
.
Utilisez Eval List() pour évaluer la liste ( Guide de script > Structures de données > Listes dans les scripts JSL > Évaluer les listes )
Names Default To Here(1);
dt = New Table("my table", New Column("X", set values({-0.35, 0.15, 0.3})));
dt << New Column("Y", set values({300, 250, 200}));
xmean = Col Mean(:X);
ymax = Col Max(:Y);
ymin = Col Min(:Y);
Print(xmean, ymax, ymin);
dtsum = Eval List({xmean, ymax, ymin});
Print(dtsum);
If(dtsum[1] < 0,
Print(dtsum[2]),
Print(dtsum[3])
);