Buen día,
Estoy buscando crear una columna que calcule la diferencia MG1 - MG2 si el valor en la columna Identificación es idéntico.
por lo tanto la diferencia entre los 2 valores amarillos o entre los 2 valores azules.
¿Cuál sería la fórmula?
Atentamente
Capture d'écran 2026-08-26 153209.pngCapture d'écran 2026-08-26 153209.png Captura de pantalla 2026-08-26 153209.png
Hola-
Parece que posiblemente tengas un proceso por lotes, etiquetado por identificación, donde los valores de MG1 y MG2 se registran en diferentes momentos, cada uno con su propia fila.
La primera pregunta que hay que plantearse es si se desea mantener esta estructura de filas con tantas entradas faltantes.
Consideremos una estructura con una fila por lote.
Menú de mesa, Resumen
Agrupar por identificación
Seleccione MG1 y MG2, utilice la media (que ignorará los valores faltantes).
Si existe la posibilidad de que los datos no estén limpios, incluya también el rango (investigue cualquier valor distinto de cero).
A continuación, dispondrá de una tabla resumida por lotes, lo que facilitará el cálculo de la diferencia.
Data Table( "SAMPLE" ) << Summary(
Group( :Identification ),
Mean( :MG1 ),
Mean( :MG2 ),
Range( :MG1 ),
Range( :MG2 ),
Freq( "None" ),
Weight( "None" ),
statistics column name format( "column stat" ),
output table name( "Summary of SAMPLE" )
);
Si desea hacerlo dentro de la tabla de datos original, una columna de fórmula como
Col Mean( :MG1, :Identification ) - Col Mean( :MG2, :Identification )
Una alternativa que solo calcula cuando MG1 está completado para esa identificación y en la fila específica donde se encuentra MG2.
If( !Is Missing( :MG2 ) & !Is Missing( Col Mean( :MG1, :Identification ) ),
Col Mean( :MG1, :Identification ) - Col Mean( :MG2, :Identification ),
.
)