Legen Sie den Zellenwert fest, wenn die Zeile ausgewählt istHallo,
Ich bin ein Neuling und versuche, ein Skript zu schreiben, um einen Zellenwert einzugeben, wenn seine Zeile ausgewählt ist.Der Anwendungsfall, an den ich denke, ist wie folgt: Während der explorativen Datenanalyse wähle ich einige Punkte in einem Diagramm aus, bei denen ich vermute, dass sie Ausreißer sind.Ich habe ein anderes Skript, das mir beim Betrachten der Rohdaten hilft (nicht Teil der JMP-Tabelle), und basierend auf der Betrachtung dieser Rohdaten entscheide ich, dass die Zeile, die diesem Datenpunkt entspricht, von meiner Analyse ausgeschlossen werden soll (d. h. die verwendeten Rohdaten). diese bestimmte Zeile zu generieren ist Müll).Ich kann einfach mit der rechten Maustaste klicken und „Ausschließen“ auswählen.Jetzt betrachten alle meine JMP-Analysen nur die guten Datenpunkte, was in Ordnung und gut ist.Nachdem ich die gesamte Analyse abgeschlossen habe, möchte ich zurückgehen und eine Analyse der Zeilen durchführen, die ich ausgeschlossen habe.Wenn beispielsweise jede Zeile Daten darstellt, die von verschiedenen Operatoren gesammelt wurden, produziert möglicherweise ein Operator viele Junk-Daten.Ich kann natürlich eine Point-and-Click-Lösung verwenden, um alle ausgeschlossenen Zeilen auszuwählen und eine neue Teilmengen-Datentabelle zu erstellen, aber ich würde lieber eine neue Spalte hinzufügen (nennen wir sie FlagColumn) und alle ausgewählten Zeilen in FlagColumn auf „ „schlecht“ und alle anderen Zeilen auf „gut“.Was mir vorschwebt, ist ungefähr so:
dt = current data table();
rows = dt << get selected rows ;
For( i=1,
i<=5,
i++,
if(Row State(i) == Selected State(1),
dt:FlagColumn[i] = 0
);
);Aber das scheint nichts zu bewirken – ich glaube, ich verstehe nicht, wie ich die Bedingung in der if-Anweisung richtig einrichten soll.Außerdem habe ich noch nicht herausgefunden, wie ich die Anzahl der Zeilen in der Tabelle ermitteln kann (zu Testzwecken habe ich im Moment einfach den Index i in der for-Schleife so eingestellt, dass er von 1 bis 5 läuft).Irgendwelche Vorschläge?Dank im Voraus!
Datenmischung und -bereinigungBetreff: Zellenwert festlegen, wenn Zeile ausgewählt istWenn Sie nicht codieren und es interaktiv halten möchten, können Sie Rows -> Row Selection -> Name Selection in Column verwenden. Dadurch wird eine Spalte erstellt, in der Sie einen Wert für die ausgewählten Zeilen und einen Wert (oder einen fehlenden Wert) für die anderen haben. Irgendwie ähnlich, was mit der oben erwähnten Skriptoption für den Zeilenstatus erreicht wurde
Betreff: Zellenwert festlegen, wenn Zeile ausgewählt ist@jdwatson ,
Hmmm, für mich kann die Validierung von Daten eine Aufgabe sein, die mehr als eine Bearbeitungssitzung erfordern kann.Vielleicht bin ich auch ungeschickt, aber für mich ist es so einfach, versehentlich die Auswahl aufzuheben.Hier ist ein alternativer Vorschlag, der es versteht @Thierry_S Anregung:
- Wenn die Qualität der zusammenfassenden/berechneten Daten als schlecht eingestuft wird, klicken Sie mit der rechten Maustaste und schließen Sie sie aus
- Sobald Sie mit der Validierung fertig sind, führen Sie die Standardanalysen durch
- Erstellen Sie eine neue Spalte, ich nenne „Ausgeschlossener Status“.Machen Sie den Datentyp Zeilenstatus, Es hat ein rotes Sternsymbol.Jetzt können Sie auf den Spaltennamen klicken und auswählen Aus Zeilenzuständen kopieren siehe Screenshot unten.

- Erstellen Sie dann eine Spalte mit dem Namen „Flag“ oder „Ausgeschlossen“ und geben Sie ihr „Numerisch“ und „Nominal“ zu. Machen Sie eine Formel Ausgeschlossen() und wählen Sie die Schaltfläche „Anwenden“, löschen Sie dann die Formel und drücken Sie OK . Jetzt haben Sie in ausgeschlossenen Zeilen eine 1 und an anderen Stellen eine 0.
- Jetzt können Sie die Zeilenzustände löschen und diese Flag-Spalte wie geplant verwenden.Sie haben jedoch den zusätzlichen Vorteil, dass Sie schnell auf die Spalte „Ausgeschlossener Staat“ klicken und auswählen können In Zeilenzustände kopieren , wenn Sie weitere Analysen der qualitativ hochwertigen Daten durchführen müssen.
Zeilenstatusspalten eignen sich besonders gut, wenn es verdächtige Daten oder Anfragen nach „Was wäre, wenn bla, bla, entfernt wurde“-Analysen gibt.Sie können einen Zeilenstatus für die Standardausschlüsse und die Standard- und Zusatzausschlüsse beibehalten.Dies ist eine Form der Zeilenstatusbehandlung, die weder interaktiv noch dynamisch ist, aber sehr nützlich sein kann.
Betreff: Zellenwert festlegen, wenn Zeile ausgewählt istAh ja, das sieht so aus, als ob es auch das Gleiche erreicht, was ich tun wollte, und zwar ohne jegliche Skripterstellung.Es scheint jedoch, dass der lokale Datenfilter keine Zeilenstatusspalten anzeigt.Gibt es eine Möglichkeit, ein Diagrammfenster so zu konfigurieren, dass es ausgeschlossene Zeilen enthält, und dann anhand des Zeilenstatus zu filtern?Oder jetzt, wo ich das sage, ist meine eigentliche Frage vielleicht, wie man am einfachsten eine Grafik/Analyse davon erhält nur die ausgeschlossenen Zeilen, ohne separate Teilmengendatentabellen zu erstellen?
Betreff: Zellenwert festlegen, wenn Zeile ausgewählt istIch glaube, ich habe meine eigene Frage beantwortet.Fügen Sie es unten hinzu, falls andere auf dieses Problem stoßen:
dt = current data table();
rs = dt << Get Row States;
For( i=1,
i<=Length(rs),
i++,
if(rs[i] == 1,
FlagColumn[i] = 1
);
);Betreff: Zellenwert festlegen, wenn Zeile ausgewählt istEine Sache noch,
Haben Sie darüber nachgedacht, den FlagColumn-Datentyp in „Zeilenstatus“ zu ändern und ihn zum Erfassen des aktuellen Auswahlstatus zu verwenden (Rechtsklick auf die Spaltenüberschrift > Zeilenstatuszellen > Auswählen/Auswählen aufheben)?
Am besten,
TSBetreff: Zellenwert festlegen, wenn Zeile ausgewählt istHallo,
Erstens ist unklar, warum Sie „rows = dt << get selected rows“ definieren und es nicht im nachfolgenden Skript verwenden würden.
Zweitens: Haben Sie die viel einfachere Formel „Selected ()“ in Betracht gezogen, die 1 zurückgibt, wenn sie ausgewählt ist, und 0, wenn nicht (dh setzen Sie die FlagColumn-Formel auf „Selected ()“)? Zu beachten ist, dass sie wie alle Formeln standardmäßig automatisch ausgewertet wird. Daher müssen Sie möglicherweise im Formeldialog auf „Auswertungsstatus unterdrücken“ umschalten, um einen bestimmten Auswahlstatus beizubehalten. Wenn Sie den Auswahlstatus nur einmal erfassen müssen, können Sie die Formel hinzufügen, die Änderung anwenden und die Formel löschen, um eine stabile Aufzeichnung dessen zu erhalten, was beim Ausführen der Formel ausgewählt wurde.Betreff: Zellenwert festlegen, wenn Zeile ausgewählt istSchauen Sie sich make rowstste Handler an