Calculer le Cpk pour les 50 derniers résultatsSalut, existe-t-il un moyen simple de calculer Cpk uniquement pour un nombre sélectionné des lignes les plus récentes à l'aide de scripts. Je regarde la capacité de la machine et bien que le Cpk global soit une métrique très utile pour identifier la capacité globale du processus, une fois que des améliorations ont été apportées au processus de fabrication, je veux un moyen de suivre facilement si le processus s'améliore en ne regardant que le Cpk pour les 50 derniers résultats. J'ai actuellement un script qui calcule automatiquement le Cpk et d'autres métriques en effectuant le 'Process Screening' et en l'enregistrant dans un tableau récapitulatif. Si possible, je veux pouvoir avoir le Cpk et le Cpk globaux des 50 derniers composants dans 2 colonnes côte à côte dans le même tableau de données. Merci d'avance!
AnalytiqueTableau de donnéesScriptingRe: Calculer le Cpk pour les 50 derniers résultatsVoici un script simple qui peut être utilisé pour obtenir le Cp / Cpk pour les 50 dernières lignes de votre table de données.Il génère la même table que votre Process Screening a généré, mais cette fois, avec seulement les 2 variables que vous voulez, et uniquement pour les 50 dernières lignes de données.

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;
Re: Calculer le Cpk pour les 50 derniers résultatsMerci qui fonctionne vraiment bien!
J'ai environ 50 colonnes de données pour lesquelles je calcule des valeurs Cpk et je me demande s'il existe un moyen simple de sélectionner ces colonnes sans avoir à coder en dur les noms de colonne lors du calcul du filtrage de processus comme vous l'avez fait dans le exemple avec NPN1 et PNP1. Je veux faire quelque chose comme ce qui suit pour obtenir les noms de colonnes, mais cela ne fonctionne pas dans son état actuel:
cNames = dt << Obtenir les noms de colonne (numérique, "continu");
scr = dt << Process Screening (Y (cNames), Control Chart Type ("Indiv and MR"));