Wie erstelle ich eine Spaltenformel für N Kategorien?Ich möchte eine Spaltenformel erstellen, die die Anzahl der unterschiedlichen Werte in einer Spalte angibt.Ich kann die Funktion „Zusammenfassung anzeigen“ des Spaltenviewers in JMP 15 verwenden, möchte diesen Wert jedoch in einer Spalte zur Verwendung in anderen Berechnungen haben.
Beispielsweise sollten in der Tabelle „Große Klassen“ für N Elemente in der Spalte „Geschlecht“ 2 als zwei unterschiedliche Werte angezeigt werden.
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?Danke schön, @txnelson & @PatrickGiuliano .
Ziemlich neu bei JMP, lerne immer noch. Gut zu wissen über den Col Number()-Operator.
Ich habe ein Beispiel meines Datensatzes angehängt. Ich suche die einzigartige Anzahl an Werkzeugen pro Woche und Jahr. Jedes Werkzeug könnte mehrere Zeilen pro Woche haben. Ich habe eine Spalte mit dem idealen Ergebnis in das Set eingefügt.
Danke nochmal für deine Hilfe!
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?Danke, Jim!
@CTrahon0526 Wenn Sie neu bei JMP sind, finden Sie hier eine ausführlichere Erläuterung dessen, was Jim mitgeteilt hat.
Sie können die Funktion „Col Number()“ in eine Spaltenformel einfügen und sie direkt in der Datentabelle berechnen.
Ich füge eine simulierte Beispiel-JMP-Datentabelle bei.
Zuerst habe ich mithilfe einer Instant Column Formula in JMP eine Spalte „Year Week“ erstellt. Klicken Sie mit der rechten Maustaste auf die Zeitspalte, Neue Formelspalte > Datum/Uhrzeit > Jahr/Woche.
Dann habe ich eine Spalte „Zählung nach Jahr und Woche“ mit der folgenden Spaltenformel erstellt:
Col Number(:time, :Year Week)
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?Die Funktion ist
Col Number(<:column Name>)
Weitere Informationen finden Sie im Skriptindex
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?
@PatrickGiuliano ,
Gibt es eine Möglichkeit, die N Elemente nach Variable zu ermitteln?
Ich versuche, die eindeutigen N-Werte pro Jahr und Arbeitswoche zu finden. Danke.
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?Danke @txnelson du bist der Mann!
@patricia_roth und ich habe mir auch die folgende Ode an die großzügige Unterstützung einiger anderer JMP-Teammitglieder ausgedacht.
Summarize( x = by( :sex ) );
N Items( x );
weitgehend das Gleiche, aber ein paar Zeilen weniger.
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?Hier ist die Formel, die ich verwenden würde:
If( Row() == 1,
Summarize( Current Data Table(), bygp = by( :sex ) );
n = N Items( bygp );
);
n;
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?Ich würde nicht tun, was Sie in einer Formel verlangen.Vielmehr würde ich:
- Klicken Sie auf Tabellen=>Zusammenfassung und erstellen Sie eine zusammenfassende Datentabelle, gruppiert nach Jahr, WW und ToolID
- Klicken Sie anhand der neu erstellten Übersichtsdatentabelle erneut auf Tabellen=>Zusammenfassung und erstellen Sie eine neue Übersichtsdatentabelle, indem Sie nur nach Jahr und WW gruppieren.Die Spalte „# Rows“ der neuen Tabelle gibt Ihnen die Anzahl der eindeutigen ToolIDs pro Jahr/WW an.
- Klicken Sie anschließend auf die ursprüngliche Datentabelle und wählen Sie dann erneut im Pulldown-Menü „Tabellen“ die Option „Aktualisieren“.Dadurch werden die Daten aus der zweiten Übersichtstabelle in die Originaltabelle kopiert.Im Dialogfenster für das Update
- Wählen Sie die zu aktualisierende Tabelle aus (die zweite Übersichtstabelle).
- Wählen Sie „Spalten anpassen“ aus
- Wählen Sie in jeder Tabelle das Jahr aus und klicken Sie auf „Übereinstimmen“.
- Wählen Sie WW aus jeder Tabelle aus und klicken Sie auf „Übereinstimmen“.
- Klicken Sie auf OK
Die Daten befinden sich nun in Ihrer ursprünglichen Datentabelle
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?@CTrahon0526 , Jims Lösung ist wunderbar! Und sie bringt Ihnen viel über Tabellenoperationen in JMP bei. Ich stimme zu, dass eine Spaltenformel in diesem Fall sehr knifflig ist. Tables Summary 2X ist eine sehr elegante Lösung. Dann werden die Ergebnisse mit Tabellen > Aktualisieren in die ursprüngliche Datentabelle „zurückaktualisiert“. Dieser letzte Schritt kann sozusagen interaktiv durchgeführt werden (indem die Spalte buchstäblich per Drag & Drop von der zweiten Übersichtstabelle zurück in die erste und schließlich in die Haupttabelle gezogen wird), anstatt Tabellen > Aktualisieren zu verwenden, aber die Lösung mit Aktualisieren ist robuster (reproduzierbarer), wenn Sie diese Berechnung für viele Tabellen durchführen möchten. Aber das gibt Ihnen einen Eindruck davon, wie interaktiv JMP als GUI-basiertes Tool ist.
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?Das Drag & Drop ist sehr cool.
Allerdings hat dieser Ansatz einen RIESIGEN Nachteil:
es ist nicht dynamisch. Wenn der Tabelle Daten hinzugefügt werden, sind die Einträge falsch.
Das ist DER Vorteil einer Spaltenformel: Die Werte sind immer korrekt.
Erstaunlich, dass in JMP keine neue Spaltenformel bzw. kein JSL-Befehl „Col N Categories ( )“ verfügbar ist.
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?Hier ist der Wunsch, eine solche Funktionalität hinzuzufügen
... zu JSL
... zur neuen Spaltenformel
... zum Graph Builder
Spalte N Kategorien
Ich schätze, es gibt nur wenige JMP-Benutzer auf der Welt, die es nicht brauchen ; )
Die meisten JMP-Benutzer werden begeistert sein, eine solche Funktionalität in einer zukünftigen Version von JMP zu sehen (... zusammen mit dichtem Ranking ).
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?[entfernt] wurde nicht an der richtigen Position angezeigt.
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?Ein bisschen spät dran mit dem Thread, aber ich suchte nach einer Lösung für dasselbe Problem. Die folgende Formel in der Datentabelle von @CTrahon0526 reproduziert die Werte in der Spalte „Eindeutige Werkzeug-IDs pro Arbeitswoche pro Jahr“
Col Sum( Col Cumulative Sum( 1, :Year, :WW, :Tool ID ) == 1, :Year, :WW )
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?Schön, das kann ich gut gebrauchen - also, jetzt habe ich:
Names Default To Here( 1 );
Try(dt = CurrentDataTable(), stop());
updateLBox = Function( {t},
(t << sib) << setitems( (t << topparent)[listboxbox( 1 )] << getselected )
);
nw = New Window("count unique entries",
<< Type("Modal Dialog"),
Border Box( Left( 10 ), Right( 10 ), bottom( 5 ),
V List Box(
Lineup Box( N Col( 1 ), spacing( 10 ),
// Text Box( "XG Boost Specification" ),
// colistbox only necessary if the script is standalone
H List Box(
Panel Box( "Select Columns", Col List Box( all, nlines( 15 ) ) ),
Panel Box( "Cast Selected Columns into Roles",
Lineup Box( N Col( 2 ),
Button Box("Unique",
<<SETFUNCTION></SETFUNCTION>... available at a single mouse click : )
Betreff: Wie erstelle ich eine Spaltenformel für N Kategorien?um das nächste Level der Interaktivität zu erreichen - bitte stimmen Sie hier ab:
Spalten transformieren – so komfortabel wie Summary-Statistiken?
zB um die Anzahl der Autohersteller anzuzeigen - korrekte Werte für einzelne Baujahre - und nach Türgröße aufzuschlüsseln:
... es gibt möglicherweise noch weitere nützliche Anwendungen : )
