Hola,
No tengo ningún problema para lograr el objetivo en JMP.
En JSL, puedo hacer piezas, pero no quiero que sea para columnas específicas vinculadas a un conjunto de datos.
Lo más inmediato es que mi lista de columnas seleccionadas no es correcta para ser evaluada como una lista para la plataforma de distribución y quiero saber qué corregir.
He hecho referencia a esta publicación. Script de múltiples columnas agrupadas en la gráfica de distribución
dt = Open("$Sample_Data/Semiconductor Capability.jmp");
cnames = dt << get column names("Continuous", "string");
//Here I will just use 10
cnames = cnames[1::10];
dist = dt << Distribution(Columns(evalList(cnames)));
En mi caso:
- ¿Mi variable no es una lista de nombres de columnas, sino columnas seleccionadas? - Esto rompe la trama dist
- tenía la agrupación de columnas funcionando, pero aquí se rompió, simplemente seleccionando las columnas
también hubo un par de casos en los que se seleccionaron las columnas, se abrió la plataforma de distribución, pero se esperaba que el usuario seleccionara las columnas.
dt = Current Data Table();
all_col_names = dt << get column names( string );
number_columns = N Cols( dt );
dt << Clear Column Selection;
//2. Containing Keyword Column Grouping
found_list = {};
keyword_group_list = {"ParamOne","ParamTwo"};
//3. Loop over columns keywords to group
For( i = 1, i <= N Items( keyword_group_list ), i++,
found_list = {};
For( k = 1, k <= N Items( col_names ), k++,
If( contains( col_names[k], keyword_group_list[i] )>0,
Insert Into( found_list, col_names[k] );
As Column( col_names[k] ) << Set Selected( 1 );
);
);
);
col_to_plot = dt << Get Selected Columns;
distParams = dt << Distribution(Columns(evalList(col_to_plot)));
distParams << arrange in rows(3);
report(distParams)[OutlineBox(2)] << Open all like this(1);
Para escribir límites de especificaciones en la tabla de datos, he estado usando el complemento, pero quiero ver cómo integrar la llamada a esto como parte del script general. Escribir límites en una tabla de datos desde una tabla de límites
Luego, necesitaré sugerencias sobre cómo incluir como se muestra a continuación, pero consulte una columna genérica [i]
Estoy bien para experimentar para extraer el Cpk como una tabla del informe.
SendToReport(
Dispatch(
{"ParamOne_a"},
"1",
ScaleBox,
{Label Row( Show Major Labels( 0 ) )}
)
)
Voy a sugerir algo completamente diferente para lograr el mismo objetivo.
Paso uno. Haga su tabla de especificaciones, solo incluya las variables con las que desea trabajar.
Paso dos, use este ejemplo para importar los límites de especificaciones y guardarlos en las propiedades de la columna.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
obj = dt <<
Process Capability(
Process Variables( :OZONE, :CO, :SO2, :NO ),
Spec Limits(
Import Spec Limits(
"$SAMPLE_DATA/CitySpecLimits.jmp"
)
)
);
obj << Save Spec Limits as Column Properties;
Eso reduce tu ejemplo a 12 líneas de código, pero ¿tal vez eso esté bien?
Salud,
si