¿Cómo evaluar una columna de abajo a arriba?Necesito contar índices negativos de una celda en particular, ¿cómo hago para que una sola columna se evalúe de abajo hacia arriba?
Columna 29 Columna 31
0-5
0-4
0-3
0-2
0 -1
1-42
1 -41
1-40
If( Lag( :Column 29, -1 ) == 1 & :Column 29 == 0,
-1,
Lag( :Column 31, -1 ) - 1
)
Automatización y scriptingAnálisis y modelado de datos básicosRe: ¿Cómo evaluar una columna de abajo a arriba?Jarmo tiene una forma muy eficaz de resolver el problema. Yo he optado por una ruta más larga, que demuestra una forma de trabajar a la inversa. El enfoque hace todo el trabajo justo cuando la fórmula comienza a procesarse mediante una función As Constant(), que ejecuta el código contenido una vez. En esta sección, se realiza un bucle desde la última fila hasta la primera fila y se crea una matriz de resultados llamada "Valores". Luego, en la fórmula real, lo único que hay que hacer es aplicar el valor de la matriz Valores a cada una de las filas.
As Constant(
values = J( 1, N Rows( Current Data Table() ), . );
For( i = Length( values ) - 1, i >= 1, i--,
if(:col 29[i] == 0 & :Col 29[i + 1] == 1,
values[i]=1,
:col 29[i] == 0 & :Col 29[i + 1] == 0,
values[i] = values[i-1]-1,
values[i]=.
));
Show( values );
);
values[Row()];

Re: ¿Cómo evaluar una columna de abajo a arriba?Según los datos de ejemplo, es posible que pueda utilizar el grupo de su primera columna y luego utilizar el recuento de elementos en ese grupo y la suma acumulativa.
Col Cumulative Sum(1, :Column 1) - 1 - Col Number(:Column 1, :Column 1)
