Ich weiß, dass dies ein bisschen dehnbar ist, aber es gibt trotzdem eine Möglichkeit, die Ei (x) -Funktion in JMP zu kodieren.<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> Die Ei (X) -Funktion ist (glaube ich) eine ziemlich seltene Funktion. Zumindest musste ich mich noch nie damit befassen. Aber es ist in einer Analyse aufgetaucht, die ich gerade mache. Ich frage mich, ob es trotzdem in JMP in eine Formel codiert werden muss. Natürlich ist es nicht standardmäßig dort, aber es gibt eine Möglichkeit, dies manuell einzugeben:
-

- In eine Formelspalte? Danke im Voraus.
- --OberflächeDachte
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.PMroz,
Das ist unglaublich! Es funktioniert einwandfrei! Dies ist sicherlich eine Bier-würdige Arbeit, wenn Sie sich überlegen, wie ich Sie kaufen kann, lassen Sie es mich wissen
--OberflächeDachte
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.OK, hier ist eine JSL-Implementierung des Fortran-Codes. Der Code wird ausgeführt, aber Sie müssen ihn testen, um sicherzustellen, dass die Zahlen gut sind. Es ist so ziemlich eine direkte Konvertierung des Fortran-Programms. Interessante Übung!
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.Ich denke, es gibt ein R-Paket, das die Integration übernimmt. Wäre das einfacher zu implementieren als das Umcodieren?
Steve Denham
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.Sie sind ziemlich unterschiedliche Sprachen. Wenn ich etwas Freizeit habe (Hah), werde ich einen Versuch unternehmen, sie umzuwandeln.
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.Je mehr ich darauf schaute (das unvollständige Gamma), desto weniger glücklich war ich auch, und ich konnte keinen einfachen Weg finden, Symmetrie anzusprechen, insbesondere für diese Funktionen.
Oh, und soweit FORTRAN in JSL übersetzt wird, ist das Wort "Doomed" durchaus angemessen. Der MATLAB-Code wäre einfacher zu übersetzen, denke ich.
Steve Denham
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.Hier komme ich über meinen Kopf hinweg
Ich bin viel mehr ein Statistiker als ein Programmierer (obwohl ich auch nicht viel davon bin ). Wie nah ist FORTRAN zu JSL? Ich habe keine Kenntnis davon. Wenn ich das Ganze kopiert und in ein JSL-Skriptfenster eingefügt und weiter versucht habe, es auszuführen und Fehler zu beheben, wäre es erfolgreich, oder wäre ich ohne Wissen über FORTAN zum Scheitern verurteilt?
Vielen Dank,
--OberflächeDachte
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.Entschuldigung, das war dumm von mir. Ich meinte wie eine Integrationsfunktion, nicht wie eine Round-to-Integer-Funktion.
- SurfaceThought
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.Steve,
Die Verwendung der Gamma-Funktion zur Berechnung von Ei (x) ist so verlockend und nahe an der Lösung, aber nachdem ich damit herumgespielt habe, denke ich leider, dass es nicht funktionieren wird. Mit der in JMP angegebenen Gamma-Funktion können Sie entweder die vollständige Gamma-Funktion oder die niedrigere unvollständige Gamma-Funktion berechnen. Mit anderen Worten, Sie können von Null bis unendlich oder von Null bis zu einem positiven x-Wert integrieren, aber Sie können nicht zur unteren Integrationsgrenze wechseln: Es ist immer Null. Das Exponentialintegral hängt mit dem zusammen Oberer, höher unvollständige Gamma-Funktion, da für die Berechnung eine variable untere Integrationsgrenze erforderlich ist und bis ins Unendliche integriert werden muss. Da die Gamma-Funktion, wie sie in JMP vorhanden ist, keine variable untere Integrationsgrenze zulässt, denke ich, dass dieser Ansatz einfach nicht funktionieren wird.
Trotzdem danke,
--OberflächeDachte
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.Hier ist eine Fortran-Implementierung: http://people.sc.fsu.edu/~jburkardt/f77_src/toms385/toms385.html
Es sollte nicht zu schwer sein, in JSL zu konvertieren.
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.Verwenden Sie in JMP Floor (x), um zu ermitteln, was in Excel (Int) ist.
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.Nicht genug für einen JMP-Benutzer - viel mehr von einer SAS-Person. Allerdings ist die Integration von SAS auf der Funktionsebene nicht besonders wichtig, obwohl es einige PROC-FCMP-Ansätze und -Makros gibt, die ich kenne.
Was ich für eine Möglichkeit hielt, war die Verwendung einiger der mit Ei (x) verknüpften Gammafunktionen, wie die unvollständige Gammafunktion, und die Eingabe und Ausgabe entsprechend zu skalieren.
Steve Denham
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.Steve: Danke für die schnelle Antwort:
Ich habe mir die Annäherungen angesehen und bin mir nicht sicher, ob sie für meine Zwecke funktionieren werden. Die Taylor-Serienannäherung:

ist scheinbar langsam zu konvergieren und würde k = 30 benötigen, um eine Genauigkeit von drei Dezimalstellen auf den Ebenen von x zu haben, mit denen ich mich befassen würde. Zusätzlich gibt die Wiki-Seite Folgendes an:
Diese Formel kann zur Berechnung verwendet werden
mit Gleitkommaoperationen für real
zwischen 0 und 2,5. Zum
ist das Ergebnis ungenau wegen Stornierung .
Was ziemlich bedrohlich ist, da ich es mit x-Werten über 2,5 zu tun habe. Ich verstehe, dass "Gleitkommaoperationen" nur bedeuten, dass das Computergerät nach jedem Berechnungsschritt auf eine bestimmte Anzahl von Dezimalstellen gerundet wird. Verwendet JMP Gleitkommaoperationen? Gibt es überhaupt eine Alternative? Ich vermute, ich könnte x irgendwie transformieren, so dass die Werte zwischen 0 und 2,5 passen.
Es gibt eine andere Näherung, die divergent ist, was nicht großartig ist, weil sie divergent ist, aber auch, weil der Fehler für kleine Werte von x (kleiner als eins) sehr groß zu sein scheint, was ebenfalls im Bereich von x-Werten liegt, die ich kann benutzen. Wenn ich diese Annäherung verwenden muss, muss ich dies tun, aber ich möchte es für die letzte Option speichern.
Das Problem bei der Berechnung des Ei (X) und dessen Import in JMP besteht darin, dass das Argument des Exponentialintegrals einen Parameter enthält, den ich für die Verwendung nichtlinearer kleinster Quadrate lösen möchte. Daher muss es tatsächlich in JMP codiert sein, damit JMP den Parameter ändern kann, um iterativ nach ihm zu suchen.
Stimmt es wirklich, dass es in JMP keine INT () - Funktion gibt?
Danke für die Hilfe,
--OberflächeDachte
Re: Ich weiß, das ist ein bisschen lang, aber es gibt sowieso die Ei (x) -Funktion in JMP zu kodieren.Nicht so selten. Die MATLAB-Seite gibt viele Annäherungen an, daher gibt es möglicherweise etwas, das Sie aus den Funktionen in JMP entnehmen können.
Sehen http://mathworld.wolfram.com/ExponentialIntegral.html
Schauen Sie sich auch die GNU-Bibliothek an ( http://www.gnu.org/software/gsl/manual/html_node/Exponential-Integral.html ). Sie können dies verwenden, um ein R-Objekt zu generieren und dieses dann in JMP zu ziehen.
Steve Denham