Betreff: Spalte transformieren: Fehler bei ausgeschlossenen ZeilenUm dieses Problem zu umgehen, könnte man den Datenfilter nach dem fragen gefilterte Zeilen und passen Sie die Formelspalte entsprechend an.
Es funktioniert – aber definitiv nicht mit dem Komfort, den man von der Arbeit mit GraphBuilder und JmpDataFilter gewohnt ist.
Ein großer Nachteil:
In Jmp haben Benutzer jederzeit die Freiheit, einen lokalen Datenfilter hinzuzufügen.
Wer fügt den Filterstatus-Handler hinzu, um sicherzustellen, dass die angezeigten Werte aktualisiert werden?
Eine Kombination aus einer Formelspalte UND einem Datenfilter – das klingt nicht nach einer Nischenanwendung.
Abgesehen von dieser Problemumgehung gibt es meiner Meinung nach in GraphBuilder eine einfache Lösung – aber ich konnte sie bisher nicht finden.
Wer hatte eine ähnliche Anwendung – und hat bereits die 1-Klick-Jmp-Komfortlösung gefunden?

Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
myRows=1::N Rows(dt);
New Column( "Rank_correct",Formula( Col Rank( :height, Excluded(), Contains( myRows, Row() ) > 0 ) ));
gb = dt << Graph Builder(
Variables(
X(
:name,
Order By( :Rank_correct, Ascending, Order Statistic( "Mean" ) )
),
Y( :Rank_correct )
),Elements( Points( X, Y ) ));
updateNow = Function({x},
myRows= (Current Report()["Local Data Filter"] << get scriptable object) << Get Filtered Rows;
if(or(isempty(myRows),NItems(myRows)==0),myRows=1::N Rows(dt));
:Rank_correct<<EVAL formula=""></EVAL>
Betreff: Spalte transformieren: Fehler bei ausgeschlossenen ZeilenIch habe den Wunsch gepostet, die Funktionalität von Transform Columns im Graph Builder (und anderen Berichten wie Zusammenfassung !!!) zu verbessern:
Spalten transformieren – so komfortabel wie Zusammenfassungsstatistiken?
Mit der neuen Funktionalität wird Transfrom Columns so komfortabel wie Summary Statistics – und die Funktionalität wird weit darüber hinausgehen 
Spalte transformieren: Fehler bei ausgeschlossenen ZeilenIm folgenden Beispiel verwende ich einen Datenfilter, um die Daten einzuschränken – und ein lokaler Datenfilter im GraphBuilder-Skript wird verwendet, um die Daten weiter einzuschränken.
Es werden 3 verschiedene Ränge eingezeichnet:
- Der erste Rang (blaue Punkte) hat kein Excluded()-Argument und daher werden alle Datenpunkte gezählt – auch solche, die vom (globalen) Datenfilter ausgeschlossen werden. Aus diesem Grund beginnt der erste geplottete Eintrag bereits bei einem hohen Wert.
- Die Formel für den zweiten Rang (rot) hat ein Excluded()-Argument, daher zählen einige Zeilen nicht und die Rangwerte sind niedriger. Aber trotzdem beginnen sie nicht bei 1. Dies ist zu erwarten, da die Formel in der Datentabelle gespeichert ist und nichts über die Zeilen weiß, die dadurch ausgeschlossen werden Lokaler Datenfilter der Handlung.
- Die dritte Rangformel ist dieselbe wie die zweite, wird jedoch in einer Transformationsspalte verwendet, die mit dem Bericht generiert wird. Leider ignoriert auch diese Formel die Zeilen, die vom lokalen Datenfilter ausgeschlossen werden.
nicht gezeigt:
der Rang, wie der Benutzer ihn erwartet: Werte von 1 bis N.

Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Data Filter( Add Filter( columns( :height ), Where( :height >= 63 ) ) );
dt << Graph Builder(
Transform Column( "Rank[height] 3", Formula( Col Rank( :height, Excluded() ) ) ),
Variables(
X(
:name,
Order By( :"Rank[height]"n, Ascending, Order Statistic( "Mean" ) )
),
Y( :"Rank[height]"n ),
Y( :"Rank[height] 2"n, Position( 1 ) ),
Y( :"Rank[height] 3"n, Position( 1 ) )
),
Elements( Points( X, Y( 1 ), Y( 2 ), Y( 3 ), Legend( 14 ) ) ),
Local Data Filter( Add Filter( columns( :height ), Where( :height >= 65.815 ) ) ),
)
Datenmischung und -bereinigungDatenexploration und -visualisierung