Wie kann ich mithilfe von JSL eine tabellarische Iteration durch mehrere Spalten durchführen?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich bin ziemlich neu bei JSL und stecke bei etwas fest, das scheinbar funktionieren sollte, aber das ist nicht der Fall.Folgendes versuche ich zu erstellen:

So sieht der Datensatz aus (naja, er ist gefälscht, aber Sie verstehen, worum es geht):

und das ist der Code, den ich verwenden möchte:
top15<
Tabelle hinzufügen(
Spaltentabelle( Analysespalten( :Acc_std ) ),
für(i=1,
i<=nitems(top15<
ich++,
Zeilentabelle (Gruppierungsspalten (Spaltenname (i)))
)
)
);
Ich mache es so, denn als ich die Tabelle manuell erstellt habe, war die Skriptausgabe:
Tabellieren(
Tabelle hinzufügen(
Spaltentabelle( Analysespalten( :Acc_std ) ),
Zeilentabelle (Gruppierungsspalten (:A)),
Zeilentabelle (Gruppierungsspalten (:B)),
Zeilentabelle (Gruppierungsspalten (:C)),
Zeilentabelle( Spalten gruppieren( ) ),
Zeilentabelle (Gruppierungsspalten (:E))
)
);
Anstatt jede Spalte aufzuschreiben, hatte ich gehofft, einfach die Spalten durchlaufen zu können (mithilfe der for-Schleife). Wo gehe ich falsch, oder gehe ich hier völlig den falschen Weg?
Dank im Voraus.
Betreff: Wie kann ich mithilfe von JSL eine tabellarische Iteration durch mehrere Spalten durchführen?Das ist sehr hilfreich, danke!
Betreff: Wie kann ich mit JSL eine tabellarische Iteration durch mehrere Spalten durchführen?Ja. JMP-Berichte und ihre Bestandteile sind im Wesentlichen Objekte, an die Sie Nachrichten senden können. Indem Sie einem Objekt (in diesem Fall „Tab“) einen Verweis zuweisen, können Sie dann „Eigenschaften anzeigen (Tab)“ ausführen, um zu sehen, welche Nachrichten das Objekt kennt und auf die es reagieren kann.
Schauen Sie sich die Kapitel 10 und 11 des Scripting-Handbuchs („Hilfe > Bücher > Scripting-Handbuch“) und auch „Hilfe > Scripting-Index“ an.
Betreff: Wie kann ich mit JSL eine tabellarische Iteration durch mehrere Spalten durchführen?Das hat perfekt funktioniert!
Nur damit ich es verstehe, es sieht so aus, als hätten Sie das Tabulatorfenster „Tab“ genannt und es Ihnen dadurch ermöglicht, zusätzliche Befehle an es zu senden, richtig?
Betreff: Wie kann ich mithilfe von JSL eine tabellarische Iteration durch mehrere Spalten durchführen?Sie können den erforderlichen Ausdruck entweder im Voraus erstellen (siehe z. B https://community.jmp.com/message/224888#224888 ) oder fügen Sie die Zeilentabellen schrittweise hinzu, wie unten beschrieben.
NamesDefaultToHere ( 1 ) ;
// Beispieltabelle
dt = Neuer Tisch ( "Prüfen" ,
Zeilen hinzufügen ( 100 ) ,
Neue Spalte ( "A" ,
Numerisch ,
„Nominal“ ,
Format ( "Am besten" , 12 ) ,
Formel ( Zufällige ganze Zahl ( 4 ) )
) ,
Neue Spalte ( "B" ,
Numerisch ,
„Nominal“ ,
Format ( "Am besten" , 12 ) ,
Formel ( Zufällige ganze Zahl ( 5 ) )
) ,
Neue Spalte ( „Y“ ,
Numerisch ,
„Kontinuierlich“ ,
Format ( "Am besten" , 12 ) ,
Formel ( Zufällig normal () )
)
) ;
// Liste der Gruppierungsspalten
cListe = { : A , : B } ;
// Tabellieren
Tab = dt << Tabellieren ( Tabelle hinzufügen ( Spaltentabelle ( Analysespalten ( : Y ) ))) ;
// Gruppierungsspalten in cList hinzufügen
Für ( C = 1 , C <= NItems ( cListe ) , C ++,
Tab << AddTable ( Zeilentabelle ( Spalten gruppieren ( cListe [ C ] ) )) ;
) ;
Ich stelle auch fest, dass (aus irgendeinem Grund) beim Ausschneiden und Einfügen des obigen Codes in das Feld „Antworten“ die „Analysespalte“ von „:Y“ auf „:Und“ (!?) umgestellt wurde.