In dieser Demonstration sehen wir, wie Sie die Analysen skripten, die von einigen der häufig verwendeten Plattformen in JMP durchgeführt werden. In der Zeitschrift im Abschnitt klicke ich auf Betonfestigkeits- und Feuchtigkeitsdaten, und dies ist der Datensatz, den ich für alle Beispiele in dieser Demonstration verwenden werde. Wir haben also die Art der Betonmischung, die resultierende Betonfestigkeit und die Umgebungsfeuchtigkeit, wenn der Beton getrocknet ist. Ich werde dies zur Seite verschieben, da wir während dieser Demonstration nicht wirklich auf den Tisch schauen werden. Und zurück im Kursjournal klicke ich auf Distribution Analysis Script. In diesem vorgefertigten Skript senden wir also die Verteilung als Nachricht an die Datentabelle Concrete und speichern das Ergebnis in einer Variablen, dist – und speichern diese Objektreferenz. Auch hier handelt es sich um die Objektreferenz des Analyse-Layers. Ich setze alle drei Spalten – Betontyp, Feuchtigkeit und Festigkeit – in diese Y-Analyserolle, und dann fordere ich auch die gleichen Optionen während des Starts für alle drei Spalten an, aber wir werden sehen, wann Wir haben das Berichtsfenster geöffnet, nicht alle Spalten können auf alle diese Optionen reagieren. Also werde ich ein paar Zeilen durchgehen, von den Argumenten bis zur Distribution, wenn wir die Plattform starten – Stack ist eine Option im Menü mit dem roten Dreieck – ganz oben, neben Distributionen – und es ändert sich einfach die Histogramme horizontal, ändert die Position der Berichtstabellen, die wir normalerweise unter den Histogrammen sehen, und ob sie aufgereiht sind – die Histogramme selbst sind nebeneinander oder vertikal aufgereiht. Stack ist also diese Option im roten Dreiecksmenü – und Sie können sehen, dass unser Skript den booleschen Wert verwendet hat, um das auszuschalten. Ihr Skript könnte sich also dafür entscheiden, da dies tatsächlich eine sehr häufige Option ist, die Benutzer in ihren Einstellungen ändern, sodass sie immer gestapelte Distributionen haben. Und wenn es für das Ergebnis Ihres Skripts wichtig ist, dass diese standardmäßig organisiert sind, möchten Sie vielleicht den Stapel deaktivieren. Außerdem legen wir fest, dass die Histogramme vertikal sind. Das finden Sie in den einzelnen roten Dreiecksmenüs für jedes rote Dreieck unter Histogrammoptionen. Sie können also sehen, dass das hier überprüft wird. Auch dies ist ein Standard, also versucht das Skript nur sicherzustellen, dass die Präsentation so aussieht, wie die Standardeinstellungen in JMP sind, unabhängig von den Benutzereinstellungen. Nun, die nächste Zeile im Skript – Zeile, in der wir die Quantile deaktiviert haben. Nun, Quantile gelten nur für stetige Variablen. Wenn Sie in einem dieser Untermenüs im Menü mit dem roten Dreieck neben Betontyp nachsehen, werden Sie das Wort „Quantile“ nicht finden. Aber wenn ich mir das rote Dreieck neben Feuchtigkeit oder Stärke unter Anzeigeoptionen ansehe, wären die Quantile normalerweise standardmäßig aktiviert, aber Sie können hier sehen, dass es in diesem Menü nicht aktiviert ist, weil wir diesen Booleschen Wert verwendet haben Outlier Box Plot ist normalerweise für stetige Variablen aktiviert. Und wir schalten das mit einem booleschen Wert aus, damit wir den Ausreißer-Boxplot nicht haben. Und schließlich haben wir den Normal Quantile Plot mit dem booleschen Wert in Klammern angefordert, und das ist etwas, das normalerweise nicht aktiviert wäre, aber wir haben diese Variablen angefordert. Und das war wiederum Teil des Plattformstarts, also taten die Variablen, die auf diese Befehle reagieren konnten, dies auch. Jetzt, nachdem wir die Plattform gestartet und die Objektreferenz in einer Variablen gespeichert haben, kann ich mit der Verteilung mit allen Variablen gleichzeitig kommunizieren oder Nachrichten an einzelne Spalten oder Variablen senden. Und das mache ich mit Indizes. Die Linie zeigt uns also nur, dass wir Fit Distribution (Normal) – also eine Normalverteilung – an alle drei Spalten senden. Und natürlich kann der konkrete Typ, der nominell ist, darauf nicht reagieren, aber die Feuchtigkeit und die Stärke werden reagieren. Also führe ich Linie aus. Und Sie können sehen, dass wir diese angepasste Normalverteilung über beide kontinuierlichen Verteilungen gelegt haben, und wir erhalten auch die angepassten normalen Gliederungselemente. Auch dies ist ein Befehl aus dem Menü mit dem roten Dreieck. Fit Distribution ist ein älterer Name für den Befehl. In neueren Versionen von JMP heißt es Continuous Fit, aber beide funktionieren immer noch. Und eine Sache, die ich anmerken wollte, lassen Sie mich zurück zum Protokoll gehen. Als ich das Skript zum Starten der Distribution ausführte, wurde der Name der Plattform angezeigt. Und das ist der Hinweis darauf, dass ich eine Analyse-Layer-Objektreferenz habe. Und wenn ich im Skript den Mauszeiger über dist bewege, sehe ich genau das. Als ich den Befehl im Nachhinein aus dem Menü mit dem roten Dreieck gesendet habe, habe ich nur dieses "skriptfähige" Ergebnis erhalten. Jetzt führen Linien und einen Mittelwerttest bei einer Stichprobe durch. Und im Menü mit dem roten Dreieck lautet der Befehl einfach Test Mean. Aber es macht keinen Sinn, dass es für die Luftfeuchtigkeit, die meinen Stichprobenmittelwert als und die Stärke für meinen Stichprobenmittelwert hat, nicht wirklich sinnvoll wäre, für mich denselben hypothetischen Mittelwert für beide zu testen. Lassen Sie mich Ihnen also zeigen, wie es interaktiv aussieht. Wenn ich zu einem der roten Dreiecke neben den kontinuierlichen Variablen gehe und Testmittelwert auswähle, gebe ich einen Wert für den hypothetischen Mittelwert ein. Also breche ich das ab und kehre zum Skripteditorfenster zurück. Ich teste also, dass der Mittelwert gleich ist, und ich sende das an die dritte Spalte im Verteilungsfenster. Also setze ich dist mit der Zahl tief. Also führe ich line aus. Und wenn ich zum Berichtsfenster navigiere, gibt es den Ein-Stichproben-t-Test für den Mittelwert. Ich werde das Gleiche dann für Feuchtigkeit mit einem anderen hypothetischen Mittel von tun, und die Art und Weise, wie ich subskriptiere, wird ein wenig anders sein. Ich werde den Namen der Spalte als Zeichenfolge verwenden – als meinen Index – und nicht ihre Position im Bericht. Also lasse ich die Linie laufen und dort bekomme ich den t-Test für Feuchtigkeit. Das sind also nur einige Beispiele für die Verteilungsplattform und das Skripting der Analyseschicht mit Befehlen aus dem roten Dreiecksmenü. Kommen wir zur One-Way-Plattform. Und ich werde fortfahren und das Verteilungsskript sowie den Verteilungsbericht schließen, aber ich werde immer noch die konkrete Datentabelle verwenden. Also klicke ich im Journal auf das Skript für die einfache ANOVA. Und das war ziemlich breit zu beginnen. Wir haben den ganzen Launch auf einer Linie. Also senden wir die Nachricht an die Datentabelle Beton. Die Nachricht ist der Start der One-Way-Plattform mit Stärke in der Y-Rolle, Betontyp in der X-Rolle, und wir fordern, dass diese fiesen Rauten mit diesem booleschen Argument aktiviert werden. Und wir speichern die Objektreferenz des Analyse-Layers in ow. Also führe ich line aus. Und so erhalten wir unser Ausgabefenster und natürlich den Namen der Plattform. Und das wird gespeichert, wenn Sie den Mauszeiger darüber bewegen. Diese grünen mittleren Rauten – wenn ich auf das rote Dreieck neben Einweganalyse gehe, finden Sie das unter Anzeigeoptionen, mittlere Rauten. Und standardmäßig wären diese nicht aktiviert, wenn ich die Varianzanalyse nicht bereits durchgeführt hätte. Aber mein Skript kann sie einschalten. Jetzt muss dieses Skriptfenster nicht mehr so breit sein. Lassen Sie uns hier mit ein paar weiteren Beispielen fortfahren. Im roten Dreiecksmenü hier haben wir also eine Option zum Einstellen des Alpha-Levels. Und es gibt drei Standardwerte. Und dann gibt es noch ein Anderes, das Sie optional auswählen können. In diesem Beispiel sende ich also die Nachricht an „Set Alpha Level“. Und ich werde es einstellen auf Und beachten Sie nur, dass die Höhe dieser grünen Mittelrauten das Konfidenzintervall des Mittelwerts ist oder mit anderen Worten das Minus-Alpha-Konfidenzintervall des Mittelwerts. Das Standard-Alpha ist also. Wenn ich also das Alpha-Niveau auf diese Werte setze, ist dies das Konfidenzintervall. Sie werden also größer. Also werde ich die Linie laufen lassen Und so sehen wir, wie sich die Höhe dieser gemeinen Diamanten ändert. Ein weiterer Bericht, den wir für die One-Way-Plattform anfordern können, wenn ich zum roten Dreieck gehe, ist der Quantiles-Bericht. Und so schalte ich das in der Zeile ein und beachte, dass die Befehle in diesem Menü, die keine Untermenüs haben, ein boolesches Argument in Klammern nehmen können oder, wie Sie online für die ANOVA sehen, was synonym ist Mit mean müssen sie überhaupt kein Argument verwenden, wohingegen die Menüpunkte mit Untermenüs diese Untermenüpunkte als Argumente verwenden. Und ich werde gleich darüber sprechen, warum wir dieses boolesche Argument verwenden sollten, obwohl es nicht erforderlich ist. Aber jetzt führe ich Zeile So aus, die mir die Quantiles-Berichtstabelle liefert und Box-Plots in den Plot einfügt. Und jetzt denken Sie daran, ANOVA und Mittelwerte sind Synonyme. Dies ist also nur ein weiterer Befehl aus dem Menü mit dem roten Dreieck. Aber auch hier habe ich die Klammern nicht in das boolesche Argument eingefügt. Also, was passiert, wenn ich die Linie laufe, die ich laufen lasse. Und ich bekomme die Varianzanalyse. Ich sollte noch einmal darauf hinweisen, dass wir im Protokoll diesen Plattformnamen jedes Mal sehen, wenn wir damit interagieren. Was passiert nun, wenn ich die Leitung erneut ausführe? Ich erhalte eine Meldung im Protokoll – eine Meldung mit einem leeren booleschen Argument, das eine bereits aktivierte Option aktiviert hat. Diese Option bleibt aktiviert. Und es wird nur erwähnt, dass Sie in früheren Versionen von JMP tatsächlich hin- und hergeschaltet hätten, indem Sie diese Zeile immer wieder ausgeführt hätten, ohne ein boolesches Argument angeben zu müssen. Wenn Sie sich also jemals Skripte ansehen, die in älteren Versionen geschrieben wurden, werden Sie das vielleicht sehen. Wir empfehlen jedoch als Best Practice, dass Sie immer dieses boolesche Argument verwenden, damit in Ihrem Skript klar ist, dass ich diese Option ein- und nicht ausschalte. Und wenn ich es entfernen möchte, würde ich, wenn ich es entfernen möchte, eine Zeile ausführen, die den booleschen Wert In der Tat, lasst uns das tun, um den Quantiles-Bericht auszuschalten. In der Zeile werde ich also das durch a ersetzen und nur diese eine Zeile ausführen. Und so wurde jetzt die Quantil-Option entfernt. Schließlich hatten wir in einer früheren Demonstration gesehen, dass Sie Nachrichten an ein Objekt kaskadieren können. Wir können aber auch eine Liste von Nachrichten an ein Objekt senden. Ich bekomme also eine neue Zeile im Skripteditorfenster. Und die Variable ow, die meine Analyse-Layer-Objektreferenz speichert, erhält die Nachricht. Und es wird eine Liste sein, Ungleiche Varianzen. Und ich werde dieses boolesche Argument verwenden, um das einzuschalten. Und lassen Sie mich kurz zum Menü mit dem roten Dreieck kommen. Es gibt also ungleiche Varianzen. Das gibt uns die Tests der Heteroskedastizität. Danach setze ich ein Komma und schließe die Klammer auf das boolesche Argument für ungleiche Varianzen. Und ich werde das Alpha-Level auf den Standardwert von zurücksetzen. Also gebe ich set alpha level ein und dann in Klammern Und ich muss diese Klammern schließen, weil ich meinen Cursor aus dieser Codezeile bewegt habe, bevor ich fertig war tippen. Und dann gehe ich mit dem Pfeil über die Liste – lassen Sie mich das verschieben, damit ich die ganze Zeile sehen kann – und setze ein Semikolon. Und so kann ich wieder nur diese eine Zeile mit der Eingabetaste auf dem Ziffernblock ausführen. Und am unteren Rand des Fensters befindet sich jetzt der Test auf ungleiche Varianz. Und ganz oben können Sie sehen, dass wir das Alpha-Niveau wieder auf unsere Konfidenzintervalle zurückgesetzt haben. Und die kleinen blauen Linien stammen nur aus dem ungleichen Varianztest. Also nur ein paar Beispiele für die Skripterstellung mit den roten Dreiecksbefehlen in der One-Way-Plattform. Schließen wir dieses Berichtsfenster und schließen wir dieses Skript, ohne die Änderungen zu speichern. Und im Tagebuch klicke ich auf Bivariate Schrift. Und wieder arbeiten wir mit der Datentabelle Beton. Die Variable, die diese Analyse-Layer-Objektreferenzen speichert, ist also biv. Und ich habe Bivariat an diese Datentabelle mit Stärke in der Y-Rolle und Feuchtigkeit in der X-Rolle gesendet. Und ich beantrage die Fit-Linie, die im Rahmen des Plattformstarts aus diesem roten Dreiecksmenü stammt. Also werde ich die Zeilen durchlaufen. Und wieder sehen wir den Plattformnamen im Protokoll. Und wenn ich über BIV schwebe, sehe ich das. Also haben wir Stärke gegen Feuchtigkeit aufgetragen und die Regressionslinie angepasst. Und dann einige der anderen Nachrichten – also, wenn ich wieder zu diesem roten Dreieck gehe, da ist Fit Line. Ich kann jeden dieser anderen Befehle nachträglich senden. Eigentlich hätte ich Fit Line nach dem Launch schicken können. Aber ich werde Fit Polynomial verwenden. Und Sie sehen, dass es dieses Untermenü gibt. Also müssen wir diese Argumente verwenden. Und im Einklang sende ich diese Nachricht an biv, Fit Polynomial, also das quadratische oder Polynom zweiter Ordnung. Ich werde diese Linie führen. Das gibt mir einen zweiten Anfall. Und wenn ich wieder nach oben scrolle, können Sie sehen, dass diese zweite Anpassung dem Diagramm überlagert ist. Und ich habe hier zwei rote Dreiecksmenüs, eines für die lineare Anpassung und eines für die polynomische Anpassung. Und sie haben ihre eigenen Befehle, die sich von den Befehlen auf der bivariaten Anpassungsebene oben im Fenster unterscheiden. Wenn ich also zum Beispiel eine schattierte Anpassung der Konfidenzbänder auf die linearen Anpassungen haben möchte – der Befehl lautet Confid Shaded Fit – muss ich tatsächlich etwas Besonderes tun. Ich muss mich zuerst mit dem linearen Fit verständigen. Und dann wird das Ergebnis der linearen Anpassung, die diese Nachricht erhält, als Nachricht an die bivariate Anpassung gesendet. Und so, wie das hier geschrieben ist – wir beziehen uns nur auf das erste als – sie werden beide als Curve bezeichnet. Wir verwenden den Index Es erhält die Nachricht Confid Shaded fit. Das ist in Klammern zusammengefasst. Und das ist die Nachricht, die von biv empfangen wird. Wenn ich diese Klammern nicht hätte, würde biv versuchen, Curve zu verstehen, was Sie Curve natürlich nirgendwo in einem der Untermenüs oder im Hauptmenü hier finden werden. Und Confid Shaded Fit wirst du hier nicht finden. Das ist dieser Kurve zugeordnet, die im Bericht als Lineare Anpassung bezeichnet wird. Wenn ich also die gesamte Linie durchlaufe, habe ich das – schattierte Konfidenzbänder auf meiner Regressionslinie. In ähnlicher Weise können wir in einem dieser roten Dreiecksmenüs, aber ich klicke auf das neben Polynomial Fit, die Linienfarbe ändern. Der Standardwert ist rot für die erste Anpassung, grün für die zweite und so weiter. Angenommen, ich möchte das in Blau ändern. Auch hier kann ich das an die zweite Kurve senden, das in Klammern setzen, und das ist die Nachricht, die an Bivariate weitergegeben wird. Also werde ich die Linie laufen lassen und Sie können sehen, dass sich die Farbe der Linie geändert hat. Nun, das ist auch etwas. Wenn Sie wissen wollten, wie man dies skriptet und Sie es nicht als Nachricht an die Plattform senden mussten, nachdem es gestartet wurde – Sie wollten es als Teil des Starts einbeziehen –, könnten Sie dies interaktiv tun und haben es dann getan JMP speichert dieses Skript im Skriptfenster und arbeitet so damit. Wenn Sie das tun würden, dann wäre der Confid Shaded Fit ein Argument für Fit Line. Und Sie würden auch das Polynom als Argument für den Start anpassen. Und die Linienfarbe wäre ein Argument dafür. Als letztes wollen wir uns hier die bivariate Plattform ansehen, aber mit einer Variablen in der By-Rolle, sodass wir separate bivariate Objekte für jede Ebene dieser By-Variable erhalten. Also werde ich das Skriptfenster schließen. Und ich werde den bivariaten Bericht schließen. Und im Kursjournal klicke ich auf Grouped Bivariate Script. Wie im vorherigen Skript starte ich also die bivariate Plattform, indem ich die Nachricht an die konkrete Datentabelle sende, in der die Variable biv mit Stärke in der Y-Rolle und X in der Feuchtigkeitsrolle gespeichert wird. Aber jetzt setze ich zusätzlich den Betontyp in die By-Analyse-Rolle. Mal sehen, wie das aussieht, wenn ich Linien durchlaufe. Wir haben also tatsächlich sechs bivariate Objekte in diesem Berichtsfenster. Und was ich im Protokoll sehe, ist, dass eine Liste mit sechs Elementen zugewiesen wurde. Nun, wie sieht diese Liste aus? Ich werde zum Skripteditorfenster zurückkehren und den Mauszeiger über biv bewegen. Und es ist eine Liste von sechs bivariaten Objekten. Damit ich biv eine Nachricht schicken kann. Und alle Objekte werden antworten, wie in Linie, wenn ich Fit Line sende. Was im Protokoll angezeigt wird, ist die Liste aller Objekte, die geantwortet haben. Und wenn wir in das Fenster schauen -- ich werde alle diese linearen Anpassungen tatsächlich zusammenklappen, indem ich die Strg-Taste gedrückt halte und auf die Schaltfläche zum Offenlegen der Umrisse neben der ersten linearen Anpassung klicke. Da ich die Strg-Taste gedrückt halte, werden alle diese Berichte im Fenster übertragen, damit ich einfacher scrollen kann. Und Sie können sehen, dass wir die bivariate Anpassung für Consolidated Reinforced, Consolidated Standard, EZMix Reinforced, EZMix Standard und so weiter haben. Was ist nun, wenn ich nur auf einige der Objekte abzielen möchte, nicht auf alle bivariaten Objekte? Nun, ich benutze Indizes. Und ich könnte einen einzelnen Index verwenden, um nur auf einen abzuzielen. Aber schauen wir uns zwei Beispiele an, bei denen mehr als ein Objekt antworten soll. In Übereinstimmung mit dem Index stellen wir also eine Liste der Indexwerte der Objekte bereit, auf die wir antworten möchten. Ich möchte, dass das erste und dritte bivariate Objekt an dieses quadratische Modell, das Polynom des Grades, angepasst wird. Also führe ich Linie aus. Und wieder verwende ich die Strg-Taste, um das Polynomanpassungs-Umrisselement zu reduzieren, um das Scrollen ein wenig einfacher zu machen. Das erste Objekt, das erste bivariate Objekt, hat also eine Polynomanpassung. Der zweite nicht. Der Dritte schon. Und der vierte, fünfte und sechste natürlich nicht. Und dann verwende ich im letzten Beispiel wieder diese Index-Funktion, indem ich ihren Operator verwende, der der Infix-Operator mit zwei doppelten Doppelpunkten ist. Dies wird also von der ersten Zahl zur zweiten Zahl in Schritten von gezählt. Also geht das zu und Fit Spline ist eine Option im Menü mit dem roten Dreieck unter Flexibel. Und Sie können all die verschiedenen Argumente sehen, die Sie dafür liefern können. Wir kämpfen also gegen einen ziemlich flexiblen Spline, um bivariat zu werden, und so werde ich die Linie laufen lassen. Und noch einmal, beachten Sie im Protokoll - ich habe vergessen, darauf hinzuweisen. Aber wenn ich einfach eine Nachricht an zwei der Objekte sende, bekomme ich eine Liste mit zwei Objekten. Und gerade jetzt, wenn ich eine Nachricht an drei der Objekte sende, bekomme ich eine Liste der drei Objekte. Und wenn wir einen Blick darauf werfen, können wir sehen, dass die erste und zweite bivariate Anpassung keinen Spline erhalten haben. Der dritte tat es. Der vierte tat es. Der fünfte tat es. Und der sechste nicht. Wir können also eine By-Rolle verwenden und separate Analysen, separate Objekte für jede Ebene dieser By-Variable haben. Und dann können wir mit allen zusammen oder einzeln kommunizieren. Dies waren also nur einige Beispiele für das Starten und anschließende Interagieren mit der Analyseebene in einigen der häufig verwendeten JMP-Plattformen.