unir datos basados en la marca de tiempo aproximadaTengo dos tablas de datos a las que necesito unir.la tabla A tiene marcas de tiempo en horas: 24, 48, 72, 96,....la tabla B tiene datos en línea con intervalos de 5 minutos, por lo que la marca de tiempo debe tener varios decimales para capturar la precisión: 1.000, 1.083, 1.167, 1.250, 1.333, 1.417, 1.500, etc. unir B con A funciona bien. Esto no es un problema porque siempre hay una coincidencia de números enteros de la marca de tiempo en la tabla B con la tabla A. Por lo tanto, para todos los puntos de tiempo de A hay un valor correspondiente en B. El problema es que algunas veces la tabla A termina en "120.1". o "120,4" horas, por ejemplo. Esto significa que la unión falla y ningún dato de B se unirá a A en el punto de datos final. ¿Hay alguna manera de obtener coincidencias "aproximadas" como funciona BUSCARV en Excel? No puedo redondear simplemente los valores de la tabla B porque entonces tengo valores que se repiten (en los intervalos de 0,3 y 0,8).
Combinación y limpieza de datosRe: unirse a datos basados en la marca de tiempo aproximadaOtra idea que quizás desee comprobar es utilizar JMP Query Builder para realizar uniones "difusas".
Miré esto en busca de alguien que quisiera identificar componentes químicos que se encuentran dentro de un cierto rango de masa a partir de espectrometría de masas.
He adjuntado 3 tablas como ejemplo. La tabla unida tiene una clase de la tabla Ref donde la masa en la tabla de datos está dentro del rango de masa baja y masa alta.
Me complace brindarle más orientación si cree que esta solución sería útil.
Así es como se define la unión difusa en JMP Query Builder:

Re: unirse a datos basados en la marca de tiempo aproximadaHOLA,
Consulte la función Loc Sorted( ). Se puede utilizar para realizar búsquedas.
Por ejemplo, el siguiente código asigna calificaciones con letras a puntuaciones de exámenes simulados. Es decir, utilizando una matriz de búsqueda [0, 60, 70, 80, 90], a las puntuaciones de muestra de 85, 67, 99, 92 y 89 se les asignan calificaciones con letras F, D, C, B y A dependiendo de si la puntuación excede 0. , 60, 70, 80 o 90, respectivamente. Lo he usado de manera análoga a su caso de uso.
Salud,
Brady
Words( "FDCBA", "" )[Loc Sorted( [0, 60, 70, 80, 90], [85, 67, 99, 92, 89] )];
