Betreff: Spalten transformieren – so komfortabel wie Zusammenfassungsstatistiken? - Status geändert in: BestätigtBetreff: Spalten transformieren – so komfortabel wie Zusammenfassungsstatistiken?Betrifft: LDF-Teilmenge

Ich habe den Jmp-Support gefragt, ob es eine JSL-Möglichkeit gibt, dies zu implementieren (TS-00056243):
Die kurze Antwort lautet: Ja nicht weg dass sich die Transformationsspalte mit einer Änderung am lokalen Datenfilter ändert [... einer von uns] hat mit anderen im technischen Support und in der Entwicklung an dem Problem gearbeitet, und es ist keine Lösung verfügbar.
Betreff: Spalten transformieren – so komfortabel wie Zusammenfassungsstatistiken?Als Motivation:
die Diskussion Bewerten Sie eine Formel für einen Bericht basierend auf der Teilmenge der im lokalen Datenfilter ausgewählten Daten neu von @Herr smith hat derzeit > 5000 Aufrufe:

Also irgendwie ein heißes Thema.
Spalten transformieren – so komfortabel wie zusammenfassende Statistiken? (:green_heart:)☑ Coole neue Funktion
☑ könnte vielen Nutzern helfen!
☑ entfernt (was sich wie) ein „Problem“ anfühlt
☐ Schön zu haben
☐ Niemand braucht es
#myTop10_2023
Was hat diesen Wunschwunsch ausgelöst?
Die zusammenfassenden Statistiken in GraphBuilder sind sehr komfortabel, sie reagieren automatisch auf Änderungen des Datenfilters und die berechneten Werte berücksichtigen die Gruppierung der Datenpunkte auf der x-Achse, die Gruppierung X/Y, den Zeilenumbruch, die Überlagerung und die Seiten.
Der alte Abschnitt über die Glättung, in dem jetzt zusammenfassende Statistiken verfügbar sind:
Mehr anzeigen...
Leider sind zusammenfassende Statistiken nur für Punkt-, Linien-, Balken- und Heatmap-Diagramme verfügbar, nicht aber beispielsweise für parallele oder glattere Diagramme.
Deshalb ist es manchmal nicht möglich, mit den automatischen Mitteln des Graph Builders eine Glättung und eine Ausrichtung von Punkt-/Liniendiagrammen zu erreichen, wie in diesem Diagramm aus dem Graph Builder: Zusammenfassende Statistiken für Glättung.

Um das Problem zu beheben, muss die Aggregation "manuell" mittels einer Transformationsspalte durchgeführt werden.
Es gibt viele Gründe, warum Benutzer Transform Columns hinzufügen, anstatt die Summary Statistics des Graph Builders zu verwenden.
- begrenzte Anzahl von Aggregationsoptionen, die über die Zusammenfassungsstatistik verfügbar sind ( CDFs zum Graph Builder hinzufügen , Rang fehlt ebenfalls)
- Der Benutzer muss die Statistiken anpassen (wird häufiger benötigt, sobald die neue JSL-Funktion „Col N Categories“ verfügbar ist).
Das Problem mit transformierten Spalten: Sie sind deutlich weniger flexibel als zusammenfassende Statistiken:
- They ignore the Local Data Filter
-
Mehr anzeigen...
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 )
)
)}
)
)
)
Solide Punkte: Mittelwert über zusammenfassende Statistiken -> unterschiedliche Werte für verschiedene Altersgruppen und Geschlechter + berücksichtigt den lokalen Datenfilter
Offene Dreiecke: Mittelwert über die Spaltentransformation -> 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, klar ... wenn es die zusammenfassenden Statistiken nicht gäbe!
Die Zusammenfassungsstatistik erhielt die gleiche Aufgabe: "Mittelwert(Gewicht)" - und zeigt völlig unterschiedliche Werte an.
-
Sie ignorieren die Verteilung der Datenpunkte auf den x/y-Achsen, X/Y-Gruppen, Umbruch, Überlagerung und Seiten.
Prinzipiell lässt sich dieses Problem sehr einfach beheben – man muss lediglich die entsprechenden Spalten als Argumente der Spaltenaggregationen hinzufügen.
Aber – bei jeder Änderung des Diagramms muss der Benutzer sehr sorgfältig prüfen, ob alle notwendigen Spalten im JSL-Code vorhanden sind.
-> Argh!
Welche Verbesserung würden Sie sich wünschen?
- Für Transform Columns im Graph Builder (und anderen Plattformen - wie Summary!!!) fügen Sie bitte eine Option hinzu, um den Local Data Filter zu berücksichtigen (Option: LDF-Teilmenge ).
-
Eine Option, die die Transformationsspalte anweist, die Daten ähnlich wie die Zusammenfassungsstatistik aufzuteilen (einzelne Teilmengen für verschiedene Werte auf der X-Achse, X/Y-Gruppen, Seiten usw.). Ich habe sie „Grafikelemente“ genannt. (Komfortmodus – ich bin sicher, es gibt einen präziseren Begriff dafür.) 
Alternative Möglichkeit:
Wenn in einer Transform Column eines GraphBuilders eine Spaltenaggregation 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":
Fügen Sie im Kontextmenü „allPlotGroups“ als Argument für die Spaltenaggregation hinzu, um dieselbe Funktionalität wie die Zusammenfassungsstatistik zu erreichen. (Bearbeitung: @Graph : )
Das letzte Beispiel ist etwas, das ich mir schon lange gewünscht habe, als ich mit zusammenfassenden Statistiken gearbeitet habe:
Wenn ich Daten über die Zeit aufzeichne, kann ich die Losnummer als Overlay verwenden. Wenn ein Los jedoch über mehrere Tage aufgeteilt ist, wird es als zwei Lose angezeigt.
Wenn ich hingegen "Mittelwert" oder "Median" aktiviere, werden alle Lose, die am selben Tag verarbeitet werden, gemittelt.
Die neue Funktion bietet also eine noch größere Flexibilität als SummaryStatistics (!): eine flexible Möglichkeit , die Aggregation der Daten festzulegen:
- einfach nach Overlay (Lot) gruppieren
- nicht nach X (Zeit) gruppieren - stattdessen: Durchschnitt über die Zeit (mittels einer anderen Transformationsspalte)

Warum ist diese Idee wichtig?
Graph Builder ist cool.
Zusammenfassende Statistiken sind sehr nützlich, aber ihr Funktionsumfang ist begrenzt. (Ich verstehe nicht, warum die Entwickler die zusammenfassenden Statistiken auf einen so kleinen Teil der beispielsweise über die Header-Statistiken verfügbaren Daten beschränkt haben!)
Und wenn man auf Formelspalten zurückgreift, tauchen Probleme auf, die zeigen, wie komfortabel die Zusammenfassungsstatistik sein kann.
Mit der neuen Funktion können Benutzer Transform Columns mit dem Komfort und der Flexibilität nutzen, die sie von Summary Statistics gewohnt sind – und das ohne die Einschränkungen.
weitere Wünsche eingereicht von 
Datenexploration und -visualisierungBetreff: Spalten transformieren – so komfortabel wie Summary-Statistiken?-1 Argument:
Smoother hat zusammenfassende Statistiken erhalten:

Betreff: Spalten transformieren – so komfortabel wie Summary-Statistiken?@XanGregg , vielen Dank : )
Betreff: Spalten transformieren – so komfortabel wie Summary-Statistiken?Vielleicht:
Stellen Sie den Umfang per Overlay als Standardmodus für die Transformation von Spalten in Berichten bereit.
Für neue Benutzer ist dies der offensichtlichste Modus (analog zu allen anderen Berechnungen im Graph Builder).
Für erfahrene Benutzer ist der Wechsel in einen anderen Modus problemlos möglich.
-> beste Wahl für alle : )
bearbeiten:
hm, "das Offensichtlichste hängt" von der Anwendung ab - für die kumulative Wahrscheinlichkeit ist "Scope by Overlay" sinnvoll
- für andere ist „ Bereich nach X “ besser ….
-> eine Einstellung in den Einstellungen hilft dem Benutzer, seinen bevorzugten Standardmodus auszuwählen
Betreff: Spalten transformieren – so komfortabel wie Summary-Statistiken?Für einen neuen Benutzer wird es sich sehr natürlich anfühlen – genau wie alle anderen automatischen Funktionen im Graph Builder.
Für einen erfahrenen Benutzer wird es sich wie Magie anfühlen : )
Beispiel mit kumulativer Wahrscheinlichkeit:
automatisch aussagekräftige Diagramme erstellen, nachdem Overlay und Wrap aktiviert wurden:
Betreff: Spalten transformieren – so komfortabel wie Summary-Statistiken?Beispiel mit N Unique:
Anzahl der Autohersteller anzeigen - nach Baujahr - und aufgeschlüsselt nach Türgröße:
Betreff: Spalten transformieren – so komfortabel wie Summary-Statistiken?Ein weiterer Anwendungsfall:
Sofortige Normalisierung – was auch immer Sie darstellen, unabhängig davon, wie oft Sie es aufteilen (Gruppe X, Gruppe Y, Umbruch, Seite) – die Daten werden automatisch durch die Menge der Datenpunkte innerhalb eines Diagramms normalisiert.
Sobald diese Funktionalität verfügbar ist, werde ich eine neue Schaltfläche hinzufügen:

zur Graph Builder-Symbolleiste : )
((current report()[OutlineBox(1)])<< get scriptable object ) <<
Transform Column(
"data_norm",
Formula(
:Data / Col Quantile(
:Data,
0.5,
:"@Exclude"n,
:"@Filter"n,
:"@Graph"n,
:"@Overlay"n
)
)
);
Betreff: Spalten transformieren – so komfortabel wie Summary-Statistiken?Kumulative Wahrscheinlichkeit - aufgeteilt und normalisiert nach Overlay-Gruppe
... über Scope = @Overlay
4 Mausklicks, das war's!
unglaublich nützlich – @XanGregg , so cool! VIELEN, VIELEN DANK!!!
Betreff: Spalten transformieren – so komfortabel wie zusammenfassende Statistiken?Wenn ein Benutzer eine Transform-Spalte manuell erstellt, z. B. X/Col Median (x) – und dann den Umfang ändern möchte, kann er das Rechtsklickmenü verwenden:

Das ist sehr bequem!
Sehr schönes Framework : )
Betreff: Spalten transformieren – so komfortabel wie zusammenfassende Statistiken? – Status geändert in: Ja, bleiben Sie dran!Vielen Dank für das Feedback! Dies wird in JMP 19 verfügbar sein.
Betreff: Spalten transformieren – so komfortabel wie zusammenfassende Statistiken? (:green_heart:) – Status geändert auf: GeliefertBetreff: Spalten transformieren – so komfortabel wie zusammenfassende Statistiken? (:green_heart:) – Status geändert auf: Geliefert