Hallo,
Ich habe zwei Fragen:
1) Wie könnte ich die Werte einer Zeile zwischen zwei Spalten summieren? Ich habe den Codeausschnitt unten gefunden, aber er kopiert einfach den 5. Wert und fügt ihn in die neue Zeile ein. Für jede Zeile möchte ich, dass alle Werte zwischen der 5. Zeile und der n-ten Spalte von TR hinzugefügt werden.
TotRow = dt << Get Column Names( Numeric );
TR = N Items( TotRow );
dt << New Column( "Total", Numeric );
For Each Row( :Total[] = (Sum( (:(Column( dt, TotRow[5 :: TR] ))) )) );
2) Zweitens: Wie erstellen Sie Übersichtstabellen? Ich versuche, die Werte in einer Übersichtstabelle zu sortieren und dann eine Spalte hinzuzufügen (in dieser Reihenfolge); Wenn ich das Skript jedoch ausführe, werden mehrere Übersichtstabellen geöffnet, eine einfache und eine mit den neuen Spalten, und die beiden Vorgänge werden auch nicht in der richtigen Reihenfolge ausgeführt. Ich möchte nur die geänderte Version und möchte darauf verweisen können, um sie weiter zu ergänzen. Code unten gezeigt:
dt2 = dt << Summary( Group( :Name, :Final ), Link to original data table( 0 ) );
dt2 << Sort( By( :Final ), Order( Descending ) );
dt2 << New Column( "Description", Character, Values( {"a", "b", "c"} ) );Danke! Ich schätze die Hilfe, die mir dieses Diskussionsforum gegeben hat.
Hier ist ein Skript, das Ihre beiden Fragen beantwortet.Sie müssen mit der Verwendung beginnen
Hilfe==>Skriptindex
um die vollständige Liste der Optionen für alle Funktionen und Plattformen zu erhalten
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\big class.jmp" );
// First way
dt << New Column( "HW Sum", formula( :Height + :Weight ) );
// Second Way
dt << New Column( "Create with Loop" );
For Each Row( :Create with Loop = :Height + :Weight );
// Second Question.....use the Replace Table option on the sort
dt2 = dt << Summary( Group( :Sex ), Link to original data table( 0 ) );
dt2 << Sort( By( :Sex ), Order( Descending ), Replace table( 1 ) );
dt2 << New Column( "Description", Character, Values( {"a", "b", "c"} ) );