Legen Sie Spezifikationsgrenzen für das K-Sigma-Makro festIch verwende die Plattform „Distribution“ zusammen mit „Set Spec Limits for KSigma“ häufig, um empfohlene Spezifikationsgrenzen für nicht normale Daten zu erhalten.Der Arbeitsablauf ist Verteilung -> Verteilung zuweisen -> Prozessfähigkeit in der Verteilungsausgabe -> Spezifikationsgrenzen für K Sigma festlegen.Dies kann ein langer Prozess sein, wenn Sie viele Spalten haben.
Im Idealfall wäre ich in der Lage, die richtige Verteilung zuzuweisen und dann über ein Makro zu verfügen, das jede Spalte durchläuft und die Ausgabe „Limit festlegen…“ erzeugt.Ich sehe, dass es ein Beispielskript für diese Funktionalität gibt, aber es hat eine fest codierte Verteilung und scheint es auch nur auf alle Spalten anzuwenden.
Es scheint, dass meine erste Hürde, die albern erscheint, darin besteht, die zugewiesene Distribution von der Distributionsplattform abzurufen, damit ich deren harte Codierung ersetzen kann (in diesem Beispiel LogNormal):
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
obj = Distribution( Column( :CO ) );
obj << Fit Distribution( LogNormal( Set Spec Limits for KSigma( 3 ) ) );
Ich habe darüber nachgedacht, so etwas wie current report()["Distributions"]<< get scriptable object;
Um den Code für die Analyse der offenen Verteilung verwenden zu können, muss ich dann herausfinden, wie ich die Spalten in der offenen Verteilung durchlaufen kann.
Die andere Option, über die ich nachgedacht habe, bestand darin, die Verteilungen als Spalteneigenschaft zuzuweisen und daraus eine Reihe individueller Analysen durchzuführen, aber ich habe auch keinen Code gesehen, der diesen Weg gehen könnte.
Vielen Dank für alle Ideen!!
Steve
Qualitäts- und VerfahrenstechnikBetreff: Spezifikationsgrenzen für K-Sigma-Makro festlegenDas hat es geschafft, es stellt sich heraus, dass ein Teil des Problems auf meine eigene Schuld zurückzuführen ist.Mir war nicht klar, dass es sich bei Handle[1] um die erste Verteilung in der Listenreihenfolge (Normal, Cauchy, Lognormal usw.) handelte, nicht um die erste Verteilung in der AIC-geordneten Tabelle.Das Makro würde also ausgeführt und ich würde nichts sehen, weil es auf die Normalverteilung angewendet wurde und diese ausgeblendet war. Wenn ich Handle[1] in Handle["best"] geändert habe, funktionierte es mit der am besten gewählten Distribution.
Der endgültige Code war einfach dieser (obwohl ich viel gelernt habe!) Nochmals vielen Dank für all die Hilfe, Tonya!
Names Default To Here( 1 );
dt=Current Data Table();
pf=current report()["Distributions"]<< get scriptable object;
pf<<(Fit Handle["best"]<<PROCESS capability=""></PROCESS>
Betreff: Spezifikationsgrenzen für K-Sigma-Makro festlegenSie mischen neue Monteure mit alten Monteuren.Der Code muss für die neuen Monteure völlig anders sein.Nachfolgend finden Sie einige Beispielcodes für die neuen Monteure.
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
obj = dt<<DISTRIBUTION></DISTRIBUTION>
Betreff: Spezifikationsgrenzen für K-Sigma-Makro festlegenDanke, dass du dir das noch einmal angeschaut hast, Tonya.
Ich stimme zu, dass der von Ihnen bereitgestellte Code funktioniert, aber er scheint zu funktionieren, da Sie die Verteilungen zuerst über das Makro zuweisen.Wenn ich die Distributionen entferne und sie manuell erneut hinzufüge und dann einfach versuche, die letzten beiden Zeilen des Makros auszuführen, funktioniert es nicht.
Was ich interessant fand, war, dass die angepassten Verteilungen den Namen „Angepasste Exponentialverteilung“ vs. „Angepasste Exponentialverteilung“ hatten, der angezeigt wurde, wenn ich sie manuell zuordnete.Das brachte mich zum Nachdenken und ... ich kann es zum Laufen bringen, wenn ich die alten Passformen verwende!Wenn ich also die Legacy-Fitter aktiviere, die Verteilungen manuell anpasse und dann die letzten beiden Zeilen ausführe, funktioniert es perfekt.
Vielleicht muss also das Skript geändert werden, um mit der neuen Anpassungsfunktion arbeiten zu können, die in 15 eingeführt wurde?
Steve
Betreff: Spezifikationsgrenzen für K-Sigma-Makro festlegenDer Code funktioniert für mich gut, wenn ich mehr als eine Spalte in der Verteilung habe.
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
obj = Distribution(
Continuous Distribution(
Column( :CO ),
Fit Distribution(
Exponential
)
),
Continuous Distribution( Column( :POP ), Fit Distribution( Gamma) )
);
ex=current report()["Distributions"]<< get scriptable object;
ex<<(Fit Handle[1]<<( Set Spec Limits for KSigma( 3 ) ) );
Betreff: Spezifikationsgrenzen für K-Sigma-Makro festlegenEs würde wahrscheinlich helfen, wenn ich mein Skript hinzufügen würde:
Names Default To Here( 1 );
dt=Current Data Table();
ex=current report()["Distributions"]<< get scriptable object;
ex<<(Fit Handle[1]<<( Set Spec Limits for KSigma( 3 ) ) );
Idealerweise würde ich die Verteilungsplattform ausführen, meine Verteilung für jede Spalte auswählen und dann dieses Skript ausführen, um alle Spezifikationsgrenzen festzulegen.
Das funktioniert also, aber nur, wenn ich eine Spalte in der Verteilungsanalyse habe.
Steve
Betreff: Spezifikationsgrenzen für K-Sigma-Makro festlegenBei mir hat es mit mehreren Spalten funktioniert.
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
obj = Distribution( Column( :CO, :POP ) );
obj << Fit Distribution( exponential ) ;
obj<<(Fit Handle[1]<<( Set Spec Limits for KSigma( 3 ) ) );
Betreff: Spezifikationsgrenzen für K-Sigma-Makro festlegenDanke Tonya!
Das funktioniert wirklich gut.Es scheint jedoch nur zu funktionieren, wenn ich eine Spalte in der Verteilungsanalyse habe.Muss ich etwas ändern, damit es funktioniert, wenn ich mehrere Spalten in der Analyse habe?Wenn ich mehr als eine habe, funktioniert es nicht; kein Fehler, aber es passiert auch nichts.
Das Skript aus der Beispielbibliothek wird mit mehreren Spalten ausgeführt (obwohl es sich um eine fest codierte Verteilungsauswahl handelt).
Steve
Betreff: Spezifikationsgrenzen für K-Sigma-Makro festlegenWenn Sie nur eine Anpassung pro Antwort haben, können Sie Folgendes verwenden:
obj<<(Fit Handle[1]<<( Spezifikationsgrenzen für KSigma( 3 ) ) festlegen);
Betreff: Spezifikationsgrenzen für K-Sigma-Makro festlegen„Baumstruktur anzeigen“ kann Ihnen helfen, die richtige Position im Bericht anzusprechen.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
obj = Distribution( Column( :CO ) );
obj << Fit Distribution( LogNormal( Set Spec Limits for KSigma( 3 ) ) );
obj << show tree structure;