☑ coole neue Funktion
☐ könnte vielen Benutzern helfen!
☐ beseitigt einen „Bug“
☐ schön zu haben
☐ Niemand braucht es
Was hat diese Wunschlistenanfrage inspiriert?
Die Zusammenfassungsstatistiken in GraphBuilder sind sehr komfortabel, sie reagieren automatisch auf Änderungen des Datenfilters und die berechneten Werte berücksichtigen die Gruppierung der Datenpunkte auf den X-Achsen, der Gruppe X/Y, dem Wrap, der Überlagerung und den Seiten.
Leider sind Zusammenfassungsstatistiken nur für Punkt-, Linien-, Balken- und Heatmap-Diagramme verfügbar, jedoch nicht für parallele oder glattere Diagramme.
Aus diesem Grund ist es manchmal NICHT möglich, ein glatteres und ausgerichtetes Punkt-/Liniendiagramm zu erhalten – mit automatischen Mitteln von Graph Builder, wie in diesem Diagramm von Graph Builder: Zusammenfassende Statistiken für Smoother

Um das Problem zu beheben, muss man die Aggregation „manuell“ durchführen Spalte transformieren.
Es gibt weitere Gründe, warum Benutzer Transformationsspalten hinzufügen, anstatt die Zusammenfassungsstatistik von Graph Builder zu verwenden.
- Begrenzte Anzahl von Aggregationsoptionen, die über Zusammenfassungsstatistiken verfügbar sind ( Fügen Sie CDFs zum Graph Builder hinzu , Rang fehlt auch)
- Benutzer muss die Statistiken anpassen (wird einmal häufiger verwendet). neue JSL-Funktion: Col N Kategorien ist verfügbar).
Das Problem der Transformationsspalten: Es gibt viel weniger davon flexibel als zusammenfassende Statistik:
- Sie ignorieren die Verteilung der Datenpunkte auf den X/Y-Achsen, X/Y-Gruppen, Wrap, Overlay und Seiten.
- Sie ignorieren den lokalen Datenfilter
Mehr sehen...Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
gb = dt << Graph Builder(
Transform Column( "Mean[weight]", Formula( Col Mean( :weight ) ) ),
Size( 480, 463 ),
Show Control Panel( 0 ),
Set α Level( 0.01 ),
Summary Statistic( "Median" ),
Graph Spacing( 4 ),
Variables(
X( :age ),
Y( :"Mean[weight]"n ),
Y( :weight, Position( 1 ) ),
Group Y( :sex ),
Overlay( :sex )
),
Elements(
Points( X, Y( 2 ), Legend( 1 ), Summary Statistic( "Mean" ) ),
Points( X, Y( 1 ), Legend( 3 ), Jitter( "None" ) )
),
Local Data Filter(
Add Filter(
columns( :name ),
Where(
:name == {"ALFRED", "ALICE", "AMY", "BARBARA", "CAROL",
"CHRIS", "CLAY", "DANNY", "DAVID", "EDWARD", "ELIZABETH",
"FREDERICK", "JACLYN", "JAMES", "JANE", "JEFFREY", "JOE",
"JOHN", "JUDY", "KIRK", "LAWRENCE", "LESLIE", "LILLIE",
"LINDA", "MARION", "MARK", "MARY", "MICHAEL", "PHILLIP",
"ROBERT", "SUSAN", "WILLIAM"}
),
Display( :name, N Items( 15 ), Find( Set Text( "" ) ) )
)
),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
3,
Base( 0, 0, 0, Item ID( "F", 1 ) ),
Base( 1, 0, 0, Item ID( "M", 1 ) ),
Properties(
0,
{Marker( "Triangle" ), Marker Size( 3 )},
Item ID( "F", 1 )
),
Properties(
1,
{Marker( "Triangle" ), Marker Size( 3 )},
Item ID( "M", 1 )
)
)}
)
)
) Feste Punkte: Mittelwert über Zusammenfassungsstatistik -> verschiedene Werte für verschiedene Altersgruppen und Geschlechter + berücksichtigt den lokalen Datenfilter
offene Dreiecke: Mittelwert über Transform Column -> alle Werte sind gleich, LDF wird ignoriert

Man könnte argumentieren: Die Dreiecke zeigen genau das an, was die Transformationsspalte berechnen soll. Kein Grund zur Sorge.
Ja, sicher ... wenn da nicht die Zusammenfassungsstatistik wäre!
Die Zusammenfassungsstatistik hat die gleiche Aufgabe: „Mittelwert(Gewicht)“ – und zeigt völlig andere Werte an.
Welche Verbesserung würden Sie sich wünschen?
Für Transformationsspalten im Graph Builder (und anderen Plattformen – wie Zusammenfassung!!!) fügen Sie bitte eine Option hinzu, um den lokalen Datenfilter zu berücksichtigen (Option: LDF-Teilmenge ).
Das Problem mit „Respektieren Sie die Verteilung der Datenpunkte auf den X/Y-Achsen, X/Y-Gruppen, Seiten usw.“ kann sehr einfach behoben werden – man muss lediglich die entsprechenden Spalten als Argumente der Spaltenaggregationen hinzufügen.
Allerdings muss der Benutzer bei jeder Änderung des Diagramms sehr sorgfältig prüfen, ob alle erforderlichen Spalten im JSL-Code vorhanden sind.
Viel einfacher: eine Option, die die Transformationsspalte anweist, die Daten ähnlich wie bei Summary Statistics aufzuteilen (einzelne Teilmengen für verschiedene Werte auf der X-Achse, X/Y-Gruppen, Seiten ...). Ich habe es „Grafikelemente“ genannt. (Komfortmodus – ich bin sicher, es gibt ein Wort, das es genauer beschreibt 
Alternative Möglichkeit:
Wenn eine Spaltenaggregation in einer Transformationsspalte eines GraphBuilders verwendet wird, sollte sie Argumente wie allPlotGroups, X, X(1), X(5), Group X, GroupX(1), Overlay, Page akzeptieren.
Col Number(:height, :sex, "Page") // if a column is used as page, please calculate individual values for the data points on different pages
Col Number(:height, :sex, "GroupY") // if a column is used as GroupY, please calculate individual values for the data points on different GroupsY
Col Number(:height, :sex, "X(1)") // please calculate individual values for different values of the column which is used as X(1)
Col Number(:height, "allPlotGroups") // please calculate individual values for different values of the column which is used as X, GroupX, GroupY, Wrap, Page
Col Number(:height, "GroupX", "GroupY", "Wrap", "Page") // similar to the previous one, but no subgroups for "same X value"
„Komfortmodus“ aus dem Kontextmenü und „allPlotGroups“ als Argument der Spaltenaggregation bieten die gleiche Funktionalität wie Zusammenfassungsstatistiken.
Das letzte Beispiel habe ich mir bei der Arbeit mit Summary Statistics schon lange gewünscht:
Bei der Darstellung von Daten im Vergleich zur Zeit kann ich die Chargennummer als Überlagerung verwenden, aber wenn eine Charge auf mehrere Tage aufgeteilt ist, werden zwei Chargen angezeigt.
Hier bietet die neue Funktion also eine noch größere Flexibilität als SummaryStatistics (!): a flexibler Weg So geben Sie an, wie Daten aggregiert werden:
- Einfach nach Overlay gruppieren (Los)
- Nicht nach X (Zeit) gruppieren - stattdessen: Durchschnitt über die Zeit (über eine andere Transfrom-Spalte)

Warum ist diese Idee wichtig?
Graph Builder ist cool.
Zusammenfassungsstatistiken sind sehr nützlich ... aber die Funktionalität von Zusammenfassungsstatistiken ist begrenzt.
Und wenn man auf Formelspalten zurückgreift, tauchen Probleme auf, die zeigen, wie komfortabel Zusammenfassungsstatistiken sein können.
Für das Problem mit dem Datenfilter gibt es eine Problemumgehung: Spalte transformieren: Fehler bei ausgeschlossenen Zeilen
Bei Dashboards mit mehr als einem einzigen Datenfilter ist jedoch etwas Aufwand erforderlich und es wird deutlich komplizierter.
Mit den neuen Gruppierungsoptionen für Spaltenaggregationen werden Transform Columns wesentlich leistungsfähiger als Summary Statistics.
--> Mit der neuen Funktion können Benutzer Transform Columns mit dem Komfort und der Flexibilität verwenden, die sie von Summary Statistics gewohnt sind – und ohne die Einschränkungen.