comparar gráficamente los resultados de los datos en las carpetas de datosHola,
Soy bastante nuevo en JMP y busco hacer lo siguiente, una operación bastante desafiante automáticamente, preferiblemente a través de un script JMP automatizado o cualquier otra solución que los expertos puedan recomendar
.
Mis datos:
Tengo dos carpetas de resultados, datafolder1 y datafolder2. Son técnicamente las mismas medidas, hay una pequeña diferencia en la configuración y las mismas medidas se repiten después y antes del cambio.
Cada carpeta tiene varios archivos .txt que son los archivos de resultados en formato de tabla .txt. Los archivos .txt tienen los mismos nombres para cada carpeta y los nombres de las columnas son los mismos. En la práctica, solo los datos numéricos son ligeramente diferentes para cada archivo.
Lo que quiero:
Quiero comparar gráficamente la diferencia del resultado datafolder1 frente al resultado datafolder2 para cada columna con el mismo nombre de .txt y generar una salida .pdf de los resultados. Logré generar el resultado que quería en formato .pdf, pero tuve que trabajar de 8 a 12 horas manualmente para obtener ese resultado con el generador de gráficos. El archivo de salida se llama "wanted_output.pdf". Ahora tengo muchos otros casos similares que hacer, y hacer esto manualmente llevaría muchos meses.
los archivos de datos son como archivo adjunto. [los datos han sido eliminados desde entonces]
Gracias de antemano, he estado luchando con este problema durante meses, ¡y espero que JMP tenga una solución simple para esto!
AnalíticaTabla de datosGráficossecuencias de comandosRe: comparar gráficamente resultados de datos en carpetas de datoshola txnelson e ian
¡Funciona de maravilla! ¡Gracias!
Tuve que cambiar la variable datafolder2 de folder1 a folder2.
Además, por alguna razón, la impresión de .pdf no se ajustó bien, tuve que cambiar la configuración de impresión predeterminada Archivo => Configuración de página.
Problema resuelto, gracias por la ayuda de todos!
PD. Tuve que eliminar los datos de la primera publicación, pero técnicamente cualquier tipo de carpeta de datos anterior y posterior funciona con este script.
Re: comparar gráficamente resultados de datos en carpetas de datosY, como alternativa a @txnelson , y siguiendo la idea original (y usando la opción 'Incluir subcarpetas'):
NamesDefaultToHere(1);
// Unzip the example file 'net_data.zip' to your Desktop
// Generated via 'File > Open Multiple..': tabList is a list of 'paired' tables
// that are built automatically according to the commonality of column names
tabList =
Multiple File Import(
<<SET folder=""></SET>
Como de costumbre, la integridad de los resultados finales depende de lo que pueda (y no pueda) suponer sobre la regularidad de los datos.
Re: comparar gráficamente resultados de datos en carpetas de datosTuve que adivinar algunas cosas, pero el siguiente script crea un pdf separado para cada uno de los archivos que se encuentran en las carpetas de la tabla de datos.Modifiqué un poco el formato del gráfico.Muestra toda la misma información, como puedo determinar mejor, pero en una forma ligeramente diferente.
En el script, deberá ingresar las rutas a la carpeta 1 y la carpeta 2. Actualmente, los archivos PDF se guardan en el directorio $ TEMP.Deberá cambiarlos a una carpeta real.
Names Default To Here( 1 );
// Set folder1 and folder2 paths
folder1 = "path to folder 1";
folder2 = "path to folder 2";
// Get files in datafolder 1 folder
fileNamesList = Files In Directory( folder1 );
For( File = 1, File <= N Items( fileNamesList ), File++,
// Open the file in datafolder1
dt1 = Open(
folder1 || "/" || fileNamesList[File],
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Tab, Comma, CSV( 1 ) ),
Strip Quotes( 1 ),
Use Apostrophe as Quotation Mark( 0 ),
Use Regional Settings( 0 ),
Scan Whole File( 1 ),
Treat empty columns as numeric( 0 ),
CompressNumericColumns( 0 ),
CompressCharacterColumns( 0 ),
CompressAllowListCheck( 0 ),
Labels( 1 ),
Column Names Start( 1 ),
Data Starts( 2 ),
Lines To Read( "All" ),
Year Rule( "20xx" )
)
);
// New column: Index
dt1 << New Column( "Index", Numeric, "ordinal", Format( "Best", 12 ), Set Each Value( Row() ) );
// New column: Index
dt1 << New Column( "Measured", Character, Set Each Value( "Before" ) );
// Open the file in datafolder2
dt2 = Open(
folder1 || "/" || fileNamesList[File],
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Tab, Comma, CSV( 1 ) ),
Strip Quotes( 1 ),
Use Apostrophe as Quotation Mark( 0 ),
Use Regional Settings( 0 ),
Scan Whole File( 1 ),
Treat empty columns as numeric( 0 ),
CompressNumericColumns( 0 ),
CompressCharacterColumns( 0 ),
CompressAllowListCheck( 0 ),
Labels( 1 ),
Column Names Start( 1 ),
Data Starts( 2 ),
Lines To Read( "All" ),
Year Rule( "20xx" )
)
);
// New column: Index
dt2 << New Column( "Index", Numeric, "Ordinal", Format( "Best", 12 ), Set Each Value( Row() ) );
// New column: Index
dt2 << New Column( "Measured", Character, Set Each Value( "After" ) );
// Concatenate tables
// → Data Table( "HW.DiodeTest.ADP_diodes" )
dt1 << Concatenate( dt2, Append to first table );
// Close the After data table
Close( dt2, nosave );
// get all continuous columns in the data table
colNamesList = dt1 << get column names( continuous, string );
theJournal = New Window( fileNamesList[File], <<JOURNAL></JOURNAL>
Re: comparar gráficamente resultados de datos en carpetas de datos¿Podrías enviarme un mensaje privado en JMP Community? Puedo ayudar tal vez un poco más fácilmente a través del correo electrónico y luego posiblemente podamos publicar la solución final aquí.
Re: comparar gráficamente resultados de datos en carpetas de datos¡Gracias Jarmo por la rápida respuesta!
De hecho, necesito un JSL para hacer todo esto, lleva demasiado tiempo hacer esto para muchos otros casos.
En la vista arquitectónica, el siguiente JSL podría funcionar:
1. Importe todos los archivos de ambas carpetas.
2. Unirse/& concatenar los resultados en un archivo, JMP parece agregar automáticamente algún tipo de indexación cuando el nombre de la tabla es el mismo (de XXXX).
3. Ordene los nombres de las columnas en orden alfabético.
4. Grafique las columnas 1 y 2 en una gráfica, grafique las columnas 3 y 4 para la siguiente gráfica, grafique las columnas 5 y 6 para la siguiente gráfica... repita la gráfica de los siguientes números hasta que no queden columnas.
Todo suena fácil, pero solo tengo conocimientos básicos de JSL, ¿algún consejo y ejemplo para cada paso?
Re: comparar gráficamente resultados de datos en carpetas de datosFile / Import Multiple Files podría ayudarlo a comenzar con bastante facilidad. Tendrá que hacer algunos cambios en la configuración predeterminada al importar los archivos (cambie el separador de coma a tabulación).
Desde este punto, puede comenzar a unir las tablas de datos. No estoy seguro de si hay alguna manera fácil de hacer esto, excepto JSL y recorrer la lista de tablas de datos que acaba de obtener del paso anterior.
Repita este proceso para ambas carpetas y luego concatene las tablas de datos y finalmente cree un gráfico con el generador de gráficos (es posible que deba apilar los datos antes de crear el gráfico).