Bonjour
J'essaie de sélectionnez une cellule individuelle en fonction de la condition et insérez-la dans une colonne en JSL.
Par exemple:
J'ai le tableau suivant - je souhaite insérer dans la première ligne sous la colonne "valeur" la valeur "score" de la deuxième ligne (11) car :
en regardant la première et la deuxième rangée :
maison = maison et y=y et x=x+1
Saisir:
| score | maison | oui | X | valeur |
| dix | NOUS | 1 | 1 | |
| 11 | NOUS | 1 | 2 | |
| dix | Canada | 1 | 1 | |
| dix | NOUS | 3 | 5 | |
Attendu:
| score | maison | oui | X | valeur |
| dix | NOUS | 1 | 1 | 11 |
| 11 | NOUS | 1 | 2 | |
| 12 | Canada | 1 | 1 | |
| 13 | NOUS | 3 | 5 | |
Merci
Ce n'est probablement pas exactement ce que vous voulez, mais cela résout votre exemple
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(4),
Compress File When Saved(1),
New Column("score", Numeric, "Continuous", Format("Best", 12), Set Values([10, 11, 10, 10])),
New Column("home", Character(16), "Nominal", Set Values({"US", "US", "Canada", "US"})),
New Column("y", Numeric, "Continuous", Format("Best", 12), Set Values([1, 1, 1, 3])),
New Column("x", Numeric, "Continuous", Format("Best", 12), Set Values([1, 2, 1, 5])),
New Column("value", Numeric, "Nominal", Format("", 16), Set Values([., ., ., .]))
);
Row() = 1;
If(:home == Lag(:home, -1) & :y == Lag(:y, -1) & :x + 1 == Lag(:x, - 1),
:value[Row()] = Lag(:score, - 1)
);