So erstellen Sie eine kumulative Zusammenfassung in einer numerischen Spalte<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich möchte in JMP auf bequeme Weise eine kumulative Zusammenfassung für eine bestimmte Spalte erstellen, wobei Ihnen für jeden Wert der Zielspalte mitgeteilt wird, wie viele Zeilen (Elemente) eine Grenze dieses Werts in dieser Spalte gefunden haben ( weniger als oder gleich . größer als oder gleich wie . weniger als , oder größer als ).
Beginnen Sie zum Beispiel mit dieser Tabelle:
| Petrischale-ID | N Bakterien |
|---|
| 0 | 100 |
| 1 | 103 |
| 2 | 98 |
| 3 | 98 |
| 4 | 102 |
| 5 | 97 |
Ich möchte vielleicht das generieren Anzahl der Petrischalen, die kleiner oder gleich waren jede Menge von Bakterien, möglicherweise wie folgt:
| Höchstens N Bakterien | N Petrischalen |
|---|
| 96 | 0 |
| 97 | 1 |
| 98 | 3 |
| 99 | 3 |
| 100 | 4 |
| 101 | 4 |
| 102 | 5 |
| 103 | 6 |
| 104 | 6 |
Ebenso möchte ich vielleicht Spalten für Mindestens N Bakterien . Weniger als N Bakterien , und Mehr als N Bakterien .
Gibt es eine bequeme Möglichkeit, dies mit einem der Menüwerkzeuge und / oder einer Formelspalte zu tun, oder würde es ein JSL-Skript erfordern? Müsste es erforderlich sein, die Originaltabelle in der Zielspalte (N Bakterien) vorsortieren zu müssen? Gibt es irgendwelche Add-Ons, die dies tun würden?
Hinweis: In MS Excel kann dies mit der " COUNTIF "Funktion neben einer manuell erstellten Spalte" At most N Bacteria "(oder welcher anderen Begrenzung).
Vielen Dank.
Re: So erstellen Sie eine kumulative Zusammenfassung in einer numerischen SpalteEval (Eval-Ausdruck (Col-Summe (: N Bakterien <= Ausdruck (: Schwelle [Reihe ())))))
Für jeden angegebenen Wert in der Spalte Schwellenwert möchten wir einen Spaltenvektor mit 0/1-Flags erstellen, der symbolisiert, welche Zeilen in der Spalte: N Bakterien (die gesamte Spalte) die Ungleichung erfüllen.
Angenommen, Zeile 3 der Spalte "Schwellenwert" lautet 98. Dann wird der Vektor erzeugt durch:
: N Bacteria <= 98, wobei jede Zeile der: N Bacteria-Spalte mit 98 verglichen wird und entsprechend eine 0 oder 1 erstellt wird.
Die Col-Sum () - Funktion summiert die 0 und 1 in dem Vektor, der erzeugt wird durch: N Bacteria <= 98. Die Summe stellt die Anzahl der Zeilen dar, in denen gilt: N Bakterien <= 98.
Das Stück: Schwellenwert [Reihe ()] ist: Schwellenwert [1] für Reihe 1, Schwellenwert [2] für Reihe 2 usw. Das Problem ist, dass wir den Wert von row () auswerten müssen, indem Sie den tatsächlichen konstanten Wert in der Datentabelle verwenden, bevor Sie den Rest der Formel auswerten.
Wir verwenden also das Konstrukt Expr (: Threshold [Row ()]), das, wenn es in Verbindung mit demEval (EvalExpr ()) - Konstrukt verwendet wird, dazu führt, dass: Threshold [row ()] durch den im Wert enthaltenen Wert ersetzt wird : "Rowth" -Zeile der Schwellenwertspalte.
Prost,
Brady
Re: So erstellen Sie eine kumulative Zusammenfassung in einer numerischen SpalteDanke für diese Formel, Brady. Ich bin immer noch verwirrt über die Einzelheiten, warum Sie einen Index ([]) für Threshold, aber nicht für N Bacteria verwenden mussten und warum Sie "Expr" und "Eval Expr" auf diese Weise verwenden müssen. Wie funktioniert das Caching unerwünschter Werte und wie funktioniert diese Formel, um das richtige Ergebnis zu erzielen? Können Sie uns diese Details näher erläutern?
Re: So erstellen Sie eine kumulative Zusammenfassung in einer numerischen SpalteSie können dies mit der folgenden Formel tun; Ändern Sie einfach die Ungleichheit entsprechend Ihren Bedürfnissen.
Eval (Eval-Ausdruck (Col-Summe (: N Bakterien <= Ausdruck (: Schwelle [Reihe ())))))
In diesem Beispiel werden die Zusammenfassungsspalten in derselben Tabelle wie die Rohdaten erstellt. (Siehe angehängte Datei.)
Beachten Sie, dass Schwellenwert und Anzahl in dieser Formel den Spalten in der zweiten Tabelle Ihres ursprünglichen Beitrags entsprechen.
Das Konstrukt Eval (Eval Expr ()) wird benötigt, um die Bewertung des Schwellenwerts in jeder angegebenen Zeile zu erzwingen. Wenn Sie beispielsweise die unten stehende Formel ausprobieren, erhalten Sie nicht die gewünschten Ergebnisse.
Col-Summe (: N Bakterien <=: Schwellenwert [Zeile ()])
Prost,
Brady