Hola
estoy tratando de seleccione una celda individual según la condición e insértela en una columna en JSL.
Por ejemplo:
Tengo la siguiente tabla: quiero insertar en la primera fila debajo de la columna "valor" el valor de "puntuación" de la segunda fila (11) porque:
Al mirar la primera y segunda fila:
casa = casa y y=y y x=x+1
Aporte:
| puntaje | hogar | y | X | valor |
| 10 | A NOSOTROS | 1 | 1 | |
| 11 | A NOSOTROS | 1 | 2 | |
| 10 | Canadá | 1 | 1 | |
| 10 | A NOSOTROS | 3 | 5 | |
Esperado:
| puntaje | hogar | y | X | valor |
| 10 | A NOSOTROS | 1 | 1 | 11 |
| 11 | A NOSOTROS | 1 | 2 | |
| 12 | Canadá | 1 | 1 | |
| 13 | A NOSOTROS | 3 | 5 | |
Gracias
Lo más probable es que esto no sea exactamente lo que quieres, pero resuelve tu ejemplo.
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)
);