Dynamisches Subset-Add-In (Filterbare Datentabelle, aktualisiert)Installieren Sie das Add-In und starten Sie es dann über das Hauptmenü: Tabellen > Dynamische Teilmenge


Zweck:
Dieses Add-In erstellt ein dynamisches Subset, eine filterbare Ansicht Ihrer offenen Datentabelle, sodass Sie nur die Zeilen und Spalten anzeigen können, die die von Ihnen angegebenen Bedingungen erfüllen.
Videobeispiel:
Gebrauchsanweisung:
- Laden Sie zunächst das Add-In herunter und öffnen Sie es dann, um den neuen Menüpunkt „Dynamic Subset“ in Ihrem Tabellenmenü zu installieren.
- Wählen Sie bei bereits geöffneter Datentabelle den Menüpunkt Tabellen > Dynamische Teilmenge. Es öffnet sich ein neues Fenster mit einer verknüpften Teilmenge Ihrer Originaltabelle, einschließlich zweier Gliederungsfelder auf der rechten Seite. Spaltenfilter Und Datenfilter .
- Der Säulen Filter Im Gliederungsfeld können Sie auswählen, welche Spalten Sie in Ihrem dynamischen Subset sehen möchten.
- Der Datenfilter Das Gliederungsfeld enthält einen JMP-Datenfilter, in dem Sie Kriterien angeben können, die Ihre Daten erfüllen müssen, um in der dynamischen Teilmenge angezeigt zu werden.
- Um das zu nutzen Spaltenfilter , wählen Sie die Spalten aus, die Sie im dynamischen Subset sehen möchten. Schlag Klar, oder deaktivieren Sie alle Spalten, um alle verfügbaren Spalten im dynamischen Subset anzuzeigen.
- Um das zu nutzen Datenfilter , wählen Sie eine oder mehrere Spalten aus, nach denen gefiltert werden soll, und klicken Sie auf das Pluszeichen. Wählen Sie dann in den resultierenden Auswahlbereichen aus, welche Kriterien Ihre Daten erfüllen müssen, um in die dynamische Teilmenge aufgenommen zu werden. Weitere Einzelheiten zur Verwendung des JMP-Datenfilters finden Sie in diesem Beispielvideo ( Verwendung des lokalen Datenfilters ), oder lesen Sie darüber im JMP-Dokumentation .
- Nachdem Sie eine Auswahl getroffen haben, können Sie JMP-Plattformen wie gewohnt für Ihr dynamisches Subset verwenden und nur die von Ihnen ausgewählten Zeilen und Spalten sind verfügbar und werden für die Analyse verwendet.
- Speichern Sie eine Ansicht, indem Sie das rote Dreieck neben Filter > Ansicht in Datentabelle speichern auswählen. Dadurch wird in der Datentabelle ein Skript mit den erforderlichen Informationen zum Neuerstellen Ihres dynamischen Subsets gespeichert. Sie können diese Ansicht innerhalb eines vorhandenen dynamischen Subsets anwenden oder direkt von Ihrer Tabelle aus starten, wenn noch kein dynamisches Subset geöffnet ist.
Nutzungshinweise:
- Wenn Sie zunächst Spalten in Ihrer ursprünglichen Tabellentabelle auswählen und dann Add-Ins > Dynamisches Subset auswählen, werden die ausgewählten Spalten automatisch als filterbare Kriterien in hinzugefügt Datenfilter Abschnitt.
- Die dynamische Teilmenge ist eine verknüpfte Teilmenge Ihrer Originaltabelle. Daher werden durch die Auswahl, die Sie in der dynamischen Teilmenge treffen, die entsprechenden Zeilen in Ihrer Originaltabelle ausgewählt.
- Das dynamische Subset ist standardmäßig gesperrt. Zum Entsperren wählen Sie das rote Dreieck neben dem Tabellennamen aus und deaktivieren Sie „Datentabelle sperren“.

Beachten Sie, dass, wie bei jeder verknüpften Teilmenge in JMP, viele Änderungen, die Sie in Dynamic Subset vornehmen, haben keine Auswirkungen auf die ursprüngliche Tabelle, wie z. B. das Erstellen neuer Spalten. Änderungen an Daten in Zellen und Spalteneigenschaften Wille Auswirkungen auf Ihren Originaltisch haben. Beliebig Durch Anpassungen, die Sie an den Spalten oder am Datenfilter vornehmen, wird Ihre Tabelle wieder auf die ursprüngliche Tabelle zurückgesetzt.
- Du Sie können „Tabellen“ > „Dynamische Teilmenge“ auswählen, ohne dass eine Tabelle geöffnet ist aufgefordert, einen Tisch auszuwählen. In diesem Fall ist die Originaltabelle standardmäßig ausgeblendet, kann aber durch Auswahl der Tabelle unter dem Menüpunkt „Fenster > Ausgeblendet“ eingeblendet werden.
Dieses Add-In erstellt eine filterbare Datentabelle, sodass Sie Zeilen finden können, die die von Ihnen angegebenen Bedingungen erfüllen.
Explorative DatenanalyseDienstprogrammeBetreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)Ah ja, ich denke, ich könnte eine Idee haben, was los ist. Wenn ich Zeit habe, fahre ich meine virtuelle Maschine hoch und schaue, ob ich sie in einem Projekt unter Windows zum Laufen bringen kann. Ich sehe auch, dass die Dinge selbst auf dem Mac nicht perfekt funktionieren, da der Rahmen für den Datenfilter nicht mehr vorhanden ist. Vielen Dank, dass Sie mich über den Defekt informiert haben!
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)@julianisch Ich erhalte die folgende Fehlermeldung, wenn ich es unter Windows versuche
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)Hallo @Sburel ,
Danke für die Information! Ich habe mir das angeschaut und kann, zumindest auf dem Mac, bestätigen, dass die Datentabelle erst angezeigt wird, wenn Sie eine Auswahl für einen Filter treffen. Sobald Sie dies getan haben, scheinen die Dinge wie erwartet zu funktionieren. Funktioniert das für dich? Ich bin mir noch nicht sicher, warum das so ist, aber ich muss mich damit befassen, wenn ich an einer nächsten Version arbeite.

Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)@julianisch Ich bin mir nicht sicher, ob Sie sich dessen bewusst sind, aber dieses Add-In scheint im Kontext eines Projekts nicht zu funktionieren.
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)@jthi Danke für deine Antwort!
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)Vielen Dank für all dieses Feedback, @jthi ! Hervorragende Vorschläge. Wenn ich Zeit habe, an einer nächsten Iteration zu arbeiten, werde ich auf jeden Fall versuchen, einige davon zu integrieren.
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)@xxvvcczz Der Code scheint For Each zu verwenden, daher ist mindestens JMP16 erforderlich (dasselbe gilt auch basierend auf der Datei addin.def minJmpVersion=16).
@julianisch Ich fange gerade erst mit diesem Add-In an, aber es scheint eine großartige Ergänzung zu JMP zu sein. Mir sind ein paar Vorschläge in den Sinn gekommen, die für zukünftige Veröffentlichungen eine Überlegung wert sein könnten:
- Fügen Sie dem Menüelement die Information hinzu, dass es sich um ein Add-In handelt. Könnte in Zukunft Verwirrung verhindern, wenn sich jemand fragt, wo sich mein Menüelement „Dynamic Subset“ befindet (ich habe dies beispielsweise für getan). Ausgewählte Spalten anordnen während ich es dem Menü „Spalten“ hinzufüge)
- Aktivieren Sie Symbolleisten für das Fenster. Noch besser wäre es, wenn Sie erzwingen könnten, dass die Symbolleisten mit denen für Datentabellen identisch sind, aber ich bin mir nicht sicher, ob das überhaupt möglich ist (vielleicht ein Wunschlisteneintrag). Dies würde es sehr schnell machen, die bevorzugten Analysen des Benutzers direkt aus der gefilterten Datentabelle zu starten (schneller als die Suche nach ihnen in Menüs).
- Wenn es irgendwo gut hineinpasst, addieren Sie die Anzahl der Zeilen, die die ursprüngliche Tabelle hat.
Einige „Probleme“, die mir aufgefallen sind:
- Wenn ich die Größe meiner dynamischen Tabelle ändere und dann filtere -> kehrt meine Tabelle manchmal zur ursprünglichen Größe zurück. Dies wird höchstwahrscheinlich ausgelöst, wenn die alte Box gelöscht und eine neue hinzugefügt wird. (Verwendung von JMP16 unter Windows 10).
- Der Vergleich für initialisierte selectedColumns funktioniert nicht wie erwartet, da IsEmpty({}) 0 und nicht 1 ist. N Items() > 0 sollte funktionieren.
- Beim Erstellen einer neuen Teilmenge mit gefilterten Daten halte ich es für besser, die Verwendung von << Select Rows(rowsSelected) und dann Teilmenge mit ausgewählten Zeilen zu vermeiden, da dies zu „unnötigen“ Auswahlen in der Originaltabelle führt (was zu einer gewissen Verlangsamung führt). Stattdessen könnte eine Teilmenge mithilfe von Rows(selectedRows) erfolgen. Dadurch können Sie möglicherweise auch einige << Clear Selects entfernen.
Ich denke auch, dass es möglich sein könnte, was zu tun @Sburel schlägt vor (wenn ich es richtig verstanden habe), aber es würde einiges an Skripten erfordern und ein Teil des aktuellen Codes würde höchstwahrscheinlich ein Umschreiben erfordern. Mein Vorschlag wäre, einige Steuerelemente hinzuzufügen (diese Lösung könnte jedoch leicht zu Verwirrung führen):
- Kontrollkästchen/Optionsfeld, das es dem Benutzer ermöglichen würde, eine Zusammenfassung anstelle einer direkten Teilmenge der Tabelle zu verwenden. Die Zusammenfassungstabelle würde auf den ausgewählten Filterspalten basieren. Dies könnte auch im Gliederungsfeld „versteckt“ werden, aber ich denke, es wäre besser, dem Benutzer zu zeigen, welche Option gerade verwendet wird.
- Wenn der Benutzer einen Wert findet, den er ändern möchte, kann dieser Wert ausgewählt werden. Dadurch wird auch dieselbe Zeile in der Originaltabelle ausgewählt (und wir kennen die Spalte aus der dynamischen Teilmenge << Ausgewählte Spalten abrufen). Dann könnte der Benutzer eine Taste drücken, die ein Fenster öffnete, in dem der Benutzer den Wert ändern konnte.
- Nachdem der Wert geändert wurde, führen Sie die dynamische Teilmenge erneut aus, um sie zu aktualisieren
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)Mit welcher JMP-Version ist dieses Add-In kompatibel?
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)Hallo Sebastien,
Ich bin froh, dass ich die Herausforderung, vor der Sie stehen, vollständig verstanden habe! Es ist interessant und je mehr ich darüber nachgedacht habe, desto mehr Möglichkeiten kann ich mir vorstellen, dass es nützlich sein könnte, dies über eine Zusammenfassung oder Teilmengentabelle zu tun. Ich werde es auf jeden Fall im Hinterkopf behalten, falls sich etwas ändert, das es möglich machen würde.
julianisch
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)Hallo @julianisch Ihr Video beschreibt das Problem, das ich mir vorgestellt habe, perfekt.Ich hatte gehofft, Korrekturen innerhalb der dynamischen Filter-Teilmengentabellen anwenden zu können, aber wie Sie sagten, ist das nicht möglich.
Nichtsdestotrotz ein großartiges Tool, auf das ich häufig zurückgreifen werde.
Vielen Dank
Sebastian
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)Hallo @Sburel ,
Ich glaube, ich verstehe besser, was Sie wollen. Ich glaube nicht, dass wir das genau erreichen können, weil verknüpfte Teilmengen mit sich ändernden Werten arbeiten (es gibt keine Möglichkeit, Dinge so zu skripten, dass in einer Übersichtstabelle geänderte Werte alle Werte in der Originaltabelle ändern). Ich denke jedoch, dass Sie hier etwas tun können, nämlich zuerst eine Übersichtstabelle zu erstellen und dann eine dynamische Teilmenge darauf zu verwenden, um die anomalen Werte aufzuspüren. Hier ist ein ziemlich konstruiertes Beispiel mit einem Beispieldatensatz, bei dem ich genau das tue, um die Zeilen aufzuspüren, die ich ändern möchte, und dann zurück zur Originaltabelle navigiere, um diese Werte zu ändern. Vielleicht würde so etwas in Ihrer Situation funktionieren?
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)@julianisch Die Funktion „X nach Y anpassen“ wäre im Zusammenhang mit der Neukodierung und/oder für sehr große Listen (> Hunderte von Zeilen) nicht sinnvoll. Wie wäre es mit der Option, wenn bereits mehrere Spalten ausgewählt sind, die Möglichkeit zu haben, die Zusammenfassung für die ausgewählten Spalten auszuführen, während sie mit der Originaltabelle verknüpft ist, und dann den dynamischen Filter für die resultierende Zusammenfassungstabelle anzuzeigen? Ich habe es auf diese Weise versucht, aber es scheint keine Änderung der resultierenden Tabelle zu ermöglichen, obwohl die Option „Datentabelle sperren“ deaktiviert ist.
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)@Sburel : Ich glaube, ich verstehe, was Sie dort zu tun versuchen, und ich kann mir vorstellen, dass das mit einer größeren Tabelle zum Aufspüren von Dingen kompliziert sein könnte. Ich bin mir nicht sicher, ob mir eine einfache Möglichkeit einfällt, dieses Add-In für solche Zwecke anzupassen. Ich frage mich jedoch, ob eine Plattform wie „Fit Y by Ein Mosaikplot macht beispielsweise einen guten Job und zeigt die eindeutigen Schnittpunkte gut an, und visuell ist es offensichtlich, wenn etwas nicht passt. In Ihrem Beispiel zum Beispiel:

Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)@julianisch Was mir vorschwebt, ist eine Art dynamische Zusammenfassungsfilterung, die für die „relative“ Neukodierung verwendet werden kann. Beispielsweise haben Sie möglicherweise eine große Tabelle, sind aber möglicherweise nur an wenigen Spalten interessiert. In diesen Spalten könnten sich viele redundante Begriffe befinden, wenn Sie die aktuelle Version verwenden, wodurch Sie eine dynamische Teilmenge erhalten.
Die Option, nur die eindeutigen Begriffe für eine ausgewählte Gruppe von Spalten anzuzeigen, würde es einfacher machen, Änderungen vorzunehmen und gleichzeitig die Beziehung zwischen Begriffen im Auge zu behalten, was mit der Neukodierungsfunktion nicht einfach möglich ist.
Ich füge eine Beispieltabelle bei, in der die Spalten Typ 1 und Typ 2 mithilfe Ihres Add-Ins untersucht werden. Ein Begriff ist falsch. In einem Zusammenfassungsszenario in Kombination mit dynamischer Filterung wäre es einfacher, den Fehler zu identifizieren und zu beheben.
New Table( "veggies",
Add Rows( 18 ),
New Column( "Column 1",
Character,
"Nominal",
Set Values(
{"a", "b", "c", "d", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m",
"n", "o", "p", "q"}
)
),
New Column( "Type 1",
Character,
"Nominal",
Set Selected,
Set Values(
{"tomatoes", "tomatoes", "tomatoes", "apple", "apple", "apple",
"carrots", "carrots", "carrots", "tomatoes", "tomatoes", "tomatoes",
"apple", "apple", "apple", "carrots", "carrots", "carrots"}
)
),
New Column( "type 2",
Character,
"Nominal",
Color Cells( {69, {17}} ),
Set Selected,
Set Values(
{"red", "green", "green", "red", "green", "red", "red", "red", "green",
"red", "green", "green", "red", "green", "red", "red", "blue", "green"}
),
Set Display Width( 55 )
)
)
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)@FN : So wie das jetzt geschrieben ist, ist es nicht möglich, dass die in der Tabelle ausgewählten Zeilen die mit den Filtern verknüpften Histogramme beeinflussen, aber vielleicht können wir es auch andersherum machen.
Ich denke, es gibt zwei Möglichkeiten, wie Sie Histogramme anzeigen können. Die erste besteht darin, die Übersichtsdiagramme in der Tabelle einzuschalten. Wählen Sie dazu das rote Dreieck neben „Filter“ und dann „Zusammenfassungsdiagramme umschalten“ aus. Wenn Sie nun die Filter ändern, werden die Histogramme für jede Spalte aktualisiert.

Eine weitere Möglichkeit besteht darin, Ihre Filter an Bedingungen zu knüpfen. Sie können dies tun, indem Sie das rote Dreieck neben „Datenfilter“ und dann „Bedingt“ auswählen:

Wenn Sie auf diese Weise einen Filter festlegen, zeigen die verbleibenden Filter nur die Werte an, die in der durch die vorherigen Filter definierten Teilmenge verbleiben.
Ich hoffe das hilft!
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)@Sburel : Kannst du mir etwas mehr darüber erzählen, was du dir da vorstellst? Wenn Sie eine Zusammenfassung der Daten anstreben und diese dynamisch filtern möchten, können Sie dies möglicherweise mit „Analysieren“ > „Tabellieren“ erreichen. Sobald Sie die Tabellierung eingerichtet haben, können Sie den lokalen Datenfilter hinzufügen, was möglich ist Gehen Sie dazu über das Rote Dreieck > Lokaler Datenfilter. Auf diese Weise können Sie die Tabellierung dynamisch filtern und sehen, wie sich diese zusammenfassenden Statistiken basierend auf der von Ihnen definierten Teilmenge ändern.
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)Sehr schön.
Wäre es sinnvoll, auch dynamische Datenfilter anzuzeigen? Verteilungen sollten sich mit der Zeilenauswahl ändern. Vielleicht gibt es eine Schaltfläche, mit der der Benutzer diese manuell verfeinern kann?
Betreff: Dynamic Subset Add-In (Filterbare Datentabelle, aktualisiert)Sehr cooles Werkzeug. Dies kann insbesondere für die Neukodierung sehr nützlich sein, da man den Inhalt der zugehörigen Spalten kennen muss, wenn die Funktion „Datentabelle sperren“ deaktiviert ist.
Unter diesen Bedingungen. Es wäre sehr hilfreich, wenn es auch eine Möglichkeit gäbe, (1) anstelle einer Teilmenge die Möglichkeit zu haben, zusammenzufassen und dynamisch zu filtern, wie es derzeit der Fall ist, und (2) die Möglichkeit zu haben, die Änderungen in einem Skript zu erfassen.
Betreff: Filterbare DatentabelleToll! Gute Arbeit @julianisch