Automatische Berechnung der prozentualen ErtragsänderungHallo,
Ich arbeite mit JMP 17.0.0 – ich versuche eine Möglichkeit zu finden, die prozentuale Änderung zwischen zwei Bedingungen in einer Spalte zu berechnen, die automatisch aktualisiert wird, wenn neue Daten hinzugefügt werden. Als Referenz finden Sie die beigefügte Datendatei.
Um dies zu finden, erstelle ich derzeit eine tabellarische Tabelle, in der ich die Spalte „Testphase“ in der Spaltenzone verwende und die berechnete Ausbeute pro Charge (Ethanol/Flüssigkeitsfeststoffe) in die Drop-Zone für Zeilen eintrage. Dann verwende ich den durchschnittlichen Ertrag für Baseline aus dieser Tabelle und erstelle dann eine neue Spalte, in der ich Folgendes berechne:
[:„Ethanol/Flüssigkeitsfeststoffe“ – („Grundlinie“ durchschnittliche Ethanol/Flüssigkeitsfeststoffe aus Tabulate)] / („Grundlinie“ durchschnittliche Ethanol/Flüssigkeitsfeststoffe aus Tabulate))
Ich ändere die Spalteneigenschaften in Prozent mit zwei Dezimalstellen, und das gibt mir genau das, was ich brauche (wie in der Datentabelle gezeigt). Das Problem besteht jedoch darin, dass ich, wenn ich weitere Basisdaten hinzufüge, die Tabelle erneut aufrufen und den neuen Basisdurchschnitt ermitteln und dann die Formelspalte aktualisieren muss, um ihn zu korrigieren. Gibt es eine Möglichkeit, JMP so einzustellen, dass dieser Basisdurchschnitt automatisch aktualisiert wird, sodass ich ihn nicht jedes Mal aktualisieren muss? Die Automatisierung wäre auch in der Situation nützlich, in der ich aus dem einen oder anderen Grund einige „Basisdaten“ ausschließen und die %-Änderung damit ebenfalls aktualisieren muss.
Im Laufe dieses speziellen Versuchs werden weitere Versuchsphasen hinzugefügt, und ich benötige, dass alle auf den Durchschnitt des „Basis“-Ertrags zurückgreifen, um die Höhe des Ertragsgewinns (oder -verlusts) im Verhältnis zum Basisdurchschnitt zu berechnen. Ich beherrsche das Programm recht gut und kann JSL-Befehlen folgen, aber es wäre ideal, wenn die Lösung einfach genug wäre, um sie an Kollegen weiterzugeben, die mit der gleichen Situation konfrontiert sind, aber möglicherweise nicht ganz so leicht mitmachen können.
Dank im Voraus!
Automatisierung und SkripterstellungBetreff: Automatische Berechnung der prozentualen ErtragsänderungIch glaube, dass Sie lediglich den Durchschnitt von Ethanol/Flüssigkeitsfeststoffen berechnen müssen
(:"Ethanol/Liq Solids"n - Col Mean( :"Ethanol/Liq Solids"n )) /
Col Mean( :"Ethanol/Liq Solids"n )
Betreff: Automatische Berechnung der prozentualen ErtragsänderungHallo Jim, leider würde das die Grundlinie zusammen mit der POC-Bedingung mitteln (die nur in einer Zeile steht – der allerletzten). Ich muss nur den Durchschnitt der Basislinie vom POC und anderen zukünftigen Testphasen trennen.
Betreff: Automatische Berechnung der prozentualen ErtragsänderungSie können die von @txnelson bereitgestellte Formel als Ausgangspunkt verwenden und :Trial Phase als ByVar hinzufügen.
(:"Ethanol/Liq Solids"n - Col Mean(:"Ethanol/Liq Solids"n, :Trial Phase)) /
Col Mean(:"Ethanol/Liq Solids"n, :Trial Phase)
https://www.jmp.com/support/help/en/17.2/#page/jmp/statistical-functions-2.shtml?os=win&source=application#ww5100429

Wenn Sie denselben Baseline-Mittelwert auch für POC verwenden müssen, müssen Sie kleine Änderungen vornehmen: Eine Möglichkeit besteht darin, If innerhalb Ihres Col Mean zu verwenden, wodurch der Wert auf Missing gesetzt wird, wenn Sie sich nicht in der Zeile „Baseline“ befinden.
(:"Ethanol/Liq Solids"n - Col Mean(If(:Trial Phase == "Baseline", :"Ethanol/Liq Solids"n, .))) /
Col Mean(If(:Trial Phase == "Baseline", :"Ethanol/Liq Solids"n, .))

Betreff: Automatische Berechnung der prozentualen ErtragsänderungDanke, Jarmo, die zweite Gleichung hat perfekt funktioniert. Ich habe so viele If-Funktionen ausprobiert, die nicht funktioniert haben, dass ich nicht glauben kann, dass ich nicht daran gedacht habe, sie in dieser Anwendung zu verwenden.
Betreff: Automatische Berechnung der prozentualen ErtragsänderungWissen Sie, was ich der Formel hinzufügen kann, um eine Neuberechnung durchzuführen, falls einige Baseline-Zeilen ausgeschlossen werden?
Betreff: Automatische Berechnung der prozentualen ErtragsänderungSie können Excluded() als Byvar hinzufügen und für ausgeschlossene Zeilen werden eigene Werte berechnet, die nicht ausgeschlossenen Zeilen werden jedoch nicht beeinflusst.
(:"Ethanol/Liq Solids"n - Col Mean(If(:Trial Phase == "Baseline", :"Ethanol/Liq Solids"n, .), Excluded()))
/ Col Mean(If(:Trial Phase == "Baseline", :"Ethanol/Liq Solids"n, .), Excluded())
Betreff: Automatische Berechnung der prozentualen ErtragsänderungFantastisch. Vielen Dank.