<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Tengo un guion ( abajo) que abre varias tablas de datos y ejecuta un script en cada una, luego las une (concatena horizontalmente) juntas. El problema que tengo ahora es la última parte en la que adjunto / unigo las tablas en el código. Mi código actualmente se une a la tabla, pero después de que se unen 2 tablas de datos concurrentes, la tercera tiene el nombre de perro guardián concatenado en su columna en lugar de retener el nombre de la tabla que abrió. A continuación se muestra un ejemplo de lo que obtengo:
| Tipo de carro de mesa 1 | Tipo de carro de mesa 2 | Tipo de coche de reloj concatenado H | Tipo de carro de mesa 4. | Tipo de coche de reloj concatenado H2. | Tipo de carro de mesa 6 |
|---|
| | | | | |
En su lugar, me gustaría que este sea mi resultado preferido:
| Tipo de carro de mesa 1 | Tipo de carro de mesa 2 | Tipo de carro de mesa 3 | Tipo de carro de mesa 4. | Tipo de carro de mesa 5 | Tipo de carro de mesa 6 |
|---|
| | | | | |
Gracias
Nombres predeterminados aquí ( 1 ) ;
// Use 'PickFile ()' para obtener una lista de archivos para abrir (solo Windows)
lista de archivos = Seleccionar archivo (
"Seleccione uno o más archivos" , // Preguntar
"$ DESKTOP" , // carpeta inicial
{ "Archivos JMP | jmp; jsl; jrn; csv" , "Todos los archivos | *" } , // Lista de filtros de archivos a aplicar (ignorados por OS / X)
1 , // Filtro de archivo inicial para aplicar (índice del elemento en la lista anterior)
0 , // Guardar marca: especifique una ventana 'Guardar' o 'Abrir'. Establece un valor de 1 o 0 respectivamente.
Vacío () , // archivo predeterminado
múltiple // Múltiple: si 'Guardar marca' = 0, el uso de un valor de 1 permite que se abra más de un archivo (ignorado por OS / X)
) ;
// Si solo se selecciona un archivo, fileList no será una lista, por lo que necesitamos crearlo para nosotros mismos
Si ( ! Es la lista ( lista de archivos ) ,
lista de archivos = Lista de evaluación ( { lista de archivos } )
) ;
// Abre los archivos y almacena sus nombres de tabla JMP correspondientes
tableNames = {} ;
por ( F = 1 , F <= N artículos ( lista de archivos ) , F ++,
Dttemp = Abierto ( lista de archivos El F ] ) ;
Insertar en ( tableNames , Dttemp << getName ) ;
Dttemp = Tabla de datos actual () ;
// Crear nuevas columnas y agregar propiedades de codificación de colores dependiendo del valeus obtenido
Dttemp << Nueva Columna ( "Max" , Numérico , continua , Formato ( "Mejor" , 5 ) , << Añadir propiedades de columna ( Establecer propiedad ( "Valor de los colores" , { 0 = 4 , 1 = 4 , 2 = 9 , 3 = 3 }) , Celular de color por valor ) , << Establecer propiedad ( "Códigos de valor faltantes" , { 0 } )) ;
Dttemp << Nueva Columna ( "Min." , Numérico , continua , Formato ( "Mejor" , 5 ) , << Añadir propiedades de columna ( Establecer propiedad ( "Valor de los colores" , { 0 = 4 , 1 = 4 , 2 = 9 , 3 = 3 }) , Celular de color por valor ) , << Establecer propiedad ( "Códigos de valor faltantes" , { 0 } )) ;
Dttemp << Nueva Columna ( "Amperio." , Numérico , continua , Formato ( "Mejor" , 5 ) , << Añadir propiedades de columna ( Establecer propiedad ( "Valor de los colores" , { 0 = 3 , 1 = 3 , 2 = 9 , 3 = 4 }) , Celular de color por valor ) , << Establecer propiedad ( "Códigos de valor faltantes" , { 0 } )) ;
Dttemp << Nueva Columna ( "Real / Modelo". , Numérico , continua , Formato ( "Mejor" , 5 ) , << Añadir propiedades de columna ( Establecer propiedad ( "Valor de los colores" , { 0 = 4 , 1 = 4 , 2 = 9 , 3 = 3 }) , Celular de color por valor ) , << Establecer propiedad ( "Códigos de valor faltantes" , { 0 } )) ;
Dttemp << Nueva Columna ( "Osc". , Numérico , continua , Formato ( "Mejor" , 5 ) , << Añadir propiedades de columna ( Establecer propiedad ( "Valor de los colores" , { 0 = 4 , 1 = 4 , 2 = 9 , 3 = 3 }) , Celular de color por valor ) , << Establecer propiedad ( "Códigos de valor faltantes" , { 0 } )) ;
por ( yo = 1 , yo <= N fila ( Dttemp ) , yo ++,
Si ( : "Max.GPM / GSF" El yo ] > ( Col significa ( : "Max.GPM / GSF" ) + ( Col máximo ( : "Max.GPM / GSF" ) - (( Col máximo ( : "Max.GPM / GSF" ) + Col significa ( : "Max.GPM / GSF" )) * 1 / 2 )) * 1 / 2 ) ,, "Max" El yo ] = 3 ,
Si ( : "Max.GPM / GSF" El yo ] > ( Col significa ( : "Max.GPM / GSF" ) - ( Col significa ( : "Max.GPM / GSF" ) - Col mínimo ( : "Max.GPM / GSF" )) * 1 / 2 ) ,, "Max" El yo ] = 2 ,
Si ( : "Max.GPM / GSF" El yo ] <= ( Col significa ( : "Max.GPM / GSF" ) - ( Col significa ( : "Max.GPM / GSF" ) - Col mínimo ( : "Max.GPM / GSF" )) * 1 / 2 ) ,
: "Max" El yo ] = 1 ,
: "Max" El yo ] = 0 ,
)
)
) ;
Si ( : "Min.GPM / GSF" El yo ] > ( Col significa ( : "Min.GPM / GSF" ) + ( Col máximo ( : "Min.GPM / GSF" ) - (( Col máximo ( : "Min.GPM / GSF" ) + Col significa ( : "Min.GPM / GSF" )) * 1 / 2 )) * 1 / 2 ) ,, "Min." El yo ] = 3 ,
Si ( : "Min.GPM / GSF" El yo ] > ( Col significa ( : "Min.GPM / GSF" ) - ( Col significa ( : "Min.GPM / GSF" ) - Col mínimo ( : "Min.GPM / GSF" )) * 1 / 2 ) ,, "Min." El yo ] = 2 ,
Si ( : "Min.GPM / GSF" El yo ] > Col mínimo ( : "Min.GPM / GSF" ) ,
: "Min." El yo ] = 1 ,
: "Min." El yo ] = 0
)
)
) ;
Si ( : "Amp.GPM / GSF" El yo ] > ( Col significa ( : "Amp.GPM / GSF" ) + ( Col máximo ( : "Amp.GPM / GSF" ) - (( Col máximo ( : "Amp.GPM / GSF" ) + Col significa ( : "Amp.GPM / GSF" )) * 1 / 2 )) * 1 / 2 ) ,, "Amperio." El yo ] = 1 ,
Si ( : "Amp.GPM / GSF" El yo ] > ( Col significa ( : "Amp.GPM / GSF" ) - ( Col significa ( : "Amp.GPM / GSF" ) - Col mínimo ( : "Amp.GPM / GSF" )) * 1 / 2 ) ,, "Amperio." El yo ] = 2 ,
Si ( : "Amp.GPM / GSF" El yo ] > Col mínimo ( : "Amp.GPM / GSF" ) ,
: "Amperio." El yo ] = 3 ,
: "Amperio." El yo ] = 0
)
) ;
) ;
Si ( : "Real / Modelo" El yo ] > ( Col significa ( : "Real / Modelo" ) + ( Col máximo ( : "Real / Modelo" ) - (( Col máximo ( : "Real / Modelo" ) + Col significa ( : "Real / Modelo" )) * 1 / 2 )) * 1 / 2 ) ,, "Real / Modelo". El yo ] = 3 ,
Si ( : "Real / Modelo" El yo ] > ( Col significa ( : "Real / Modelo" ) - ( Col significa ( : "Real / Modelo" ) - Col mínimo ( : "Real / Modelo" )) * 1 / 2 ) ,, "Real / Modelo". El yo ] = 2 ,
Si ( : "Real / Modelo" El yo ] > Col mínimo ( : "Real / Modelo" ) ,
: "Real / Modelo". El yo ] = 1 ,
: "Real / Modelo". El yo ] = 0
)
)
) ;
Si ( : "st-dev". El yo ] > ( Col significa ( : "st-dev". ) + ( Col máximo ( : "st-dev". ) - (( Col máximo ( : "st-dev". ) + Col significa ( : "st-dev". )) * 1 / 2 )) * 1 / 2 ) , : "Osc". El yo ] = 3 ,
Si ( : "st-dev". El yo ] > ( Col significa ( : "st-dev". ) - ( Col significa ( : "st-dev". ) - Col mínimo ( : "st-dev". )) * 1 / 2 ) , : "Osc". El yo ] = 2 ,
Si ( : "st-dev". El yo ] > Col mínimo ( : "st-dev". ) ,
: "Osc". El yo ] = 1 ,
: "Osc". El yo ] = 0
)
)
) ;
) ;
Dttemp << Nueva Columna ( "GPM (día) / GSF" , Numérico , continua , Formato ( "Mejor" , 5 ) , Fórmula ( : "Max.GPM / GSF" * 12 ) ) ;
// Pesos dados
w1 = 1 ;
w2 = 1 ;
w3 = 0.5 ;
w4 = 0 ;
w5 = 0.5 ;
Dttemp << Nueva Columna ( "Total_Vs" , Numérico , continua , Formato ( "Mejor" , 5 ) ,
Fórmula ( : "Max" * w1 + : "Min." * w2 + : "Amperio." * w3 + : "Real / Modelo" * w4 + : "Osc". * w5 ) ,
<< Añadir propiedades de columna ( Establecer propiedad ( "Valor de los colores" , { por ( yo = 1 , yo <= N fila ( Dttemp ) , yo ++,
Si ( Columna ( Dttemp , "Total_Vs" ) [ yo ] > = 8 , Columna ( Dttemp , "Resultado final" ) << Celulas de color ( rojo , { yo } ) ,
Columna ( Dttemp , "Total_Vs" ) [ yo ] > = 4 , Columna ( Dttemp , "Resultado final" ) << Celulas de color ( amarillo , { yo } ) ,
Columna ( Dttemp , "Total_Vs" ) << Celulas de color ( verde , { yo } )
) )} ) , Celular de color por valor )
) ;
// Eliminar columnas
Dttemp = Tabla de datos actual () ;
Columna ( Dttemp , "Línea verde" ) << esconder ( 1 ) ;
Dttemp = Tabla de datos actual () ;
Columna ( Dttemp , "GreenLineIdx" ) << esconder ( 1 ) ;
// Anexar las tablas de datos juntas
Si ( F == 1 ,
dt = Dttemp ,
dtx = dt << Unirse ( Con ( Dttemp ) ,
Conservar orden de la mesa principal ( 1 ) ,
Nombre de la tabla de salida ( "Reloj Concatenado H" ) ,
Retener propiedad de columna ) ;
Cerrar ( Dttemp , no guardar ) ;
Cerrar ( dt , no guardar ) ;
dt = dtx
) ;
) ;
Ayuda: jordanhiller @ jmp SRA