Calcola Cpk per gli ultimi 50 risultatiCiao, esiste un modo semplice per calcolare il Cpk solo per un numero selezionato di righe più recenti utilizzando gli script? Sto esaminando la capacità della macchina e, sebbene il Cpk complessivo sia una metrica molto utile per identificare la capacità complessiva del processo, una volta apportati miglioramenti al processo di produzione, desidero un modo per monitorare facilmente se il processo sta migliorando esaminando solo il Cpk per gli ultimi 50 risultati. Attualmente ho uno script che calcola automaticamente il Cpk e altre metriche eseguendo lo "Screening del processo" e salvandolo in una tabella di riepilogo. Se possibile, desidero poter avere il Cpk complessivo e il Cpk degli ultimi 50 componenti in 2 colonne una accanto all'altra nella stessa tabella dati. Grazie in anticipo!
Ingegneria della qualità e dei processiRe: Calcola Cpk per gli ultimi 50 risultatiEcco la soluzione.....
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
cNames = dt << Get Column Names(Numeric, "Continuous");
// shorten list for illustration purposes
remove from( cNames, 3, 128);
dt << select where( Row() < N Rows( dt ) - 50 );
dt << hide and exclude;
ps = dt << Process Screening( Y( eval(cNames) ), Control Chart Type( "Indiv and MR" ) );
newdt = ps << get data table;
dt << clear rowstates;
Le tue esperienze con JSL saranno notevolmente migliorate se ti prendi il tempo per leggere la Guida agli script.
Re: Calcola Cpk per gli ultimi 50 risultatiGrazie funziona davvero bene!
Ho circa 50 colonne di dati per cui sto calcolando i valori Cpk e mi chiedo se esiste un modo semplice per selezionare queste colonne senza dover codificare i nomi delle colonne durante il calcolo dello Screening del processo come hai fatto nel esempio con NPN1 e PNP1. Voglio fare qualcosa di simile al seguente per ottenere i nomi delle colonne ma non funziona nello stato corrente:
cNames = dt << Get Column Names( Numeric, "Continuous" );
scr = dt << Process Screening( Y( cNames ), Control Chart Type( "Indiv and MR" ) );
Re: Calcola Cpk per gli ultimi 50 risultatiEcco un semplice script che può essere utilizzato per ottenere Cp/Cpk per le ultime 50 righe nella tabella dei dati.Genera la stessa tabella generata dallo screening del processo, ma questa volta con solo le 2 variabili desiderate e solo per le ultime 50 righe di dati.

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
dt << select where( Row() < N Rows( dt ) - 50 );
dt << hide and exclude;
ps = dt << Process Screening( Y( :NPN1, :PNP1 ), Control Chart Type( "Indiv and MR" ) );
newdt = ps << get data table;
dt << clear rowstates;