eliminar elementos duplicados en una tabla<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hola a todos,
tengo una tabla con ~20 columnas y alrededor de 500 filas, dos de estas columnas son Número de serie y Marca de tiempo, y el resto son datos de medición diversos.
en algunos casos, tengo filas de datos que tienen el mismo número de serie, pero todos los demás valores son diferentes.
mi objetivo es escribir un script para limpiar la tabla de datos de modo que solo queden filas con un número de serie único.
Primero quiero seleccionar elementos con el mismo número de serie y luego identificar de ese subconjunto el que tiene la última marca de tiempo (que es solo un valor numérico) y eliminar el resto,
así que tengo una mesa limpia con números de serie únicos a la izquierda.
Agradecería si alguien aquí pudiera guiarme sobre cómo escribir este código. He revisado otros ejemplos en el foro, pero todavía estoy luchando con esto.
Gracias
Bble, arranca
Re: eliminar elementos duplicados en una tablaSi no está buscando una solución de secuencias de comandos. Puede hacer esto de forma interactiva creando una columna de estado de fila con una fórmula.

Esto usa la función Col Maximum que toma argumentos opcionales para By Variables.
También puede usar esta función con el mensaje Seleccionar dónde en un script.
dt = Abrir( "$SAMPLE_DATA\Big Class.jmp");
dt << seleccionar donde(
Altura== Col Max(
Altura, Edad, Sexo
)
);
-Jeff
Re: eliminar elementos duplicados en una tablahola mpb,
¡Impresionante! Lo modifiqué para adaptarlo a mis datos, ¡y seguro que funciona bien!
muchas gracias
saludos
Re: eliminar elementos duplicados en una tablaEste código muestra una manera de hacerlo. Lo ejecuté contra estos datos:

mydt = tabla de datos("MiDemo");
mydtsummary = Tabla de datos ("MyDemo") << Resumen (
Grupo( :SN ),
Máx(:DT),
formato de nombre de columna de estadísticas ("estadísticas de columna")
);
mydt << Actualizar(
Con (Tabla de datos (mydtsummary)),
Coincidencia de columnas ( :SN = :SN ),
Agregar columnas de la tabla de actualización (: Máx. de DT)
);
mydt << select where(:DT == :Max of DT) << invertir selección de fila;
mydt << eliminar filas;
mydt << eliminar columnas ("Max of DT");
close(miresumendt, noguardar);