php Funktionen gesucht
hmm
- php
Hi Leute,
ich muss folgende Funktionen in php implementieren, kent jemand eine php bibliothek die diese funktionen schon hat oder hat für irgendwas davon einen passenden code parat?
ich brauche:
eine funktion, die zufällszahlen generiert die normalverteilt sind zu parametern müh und sigma (polar methode bringt nix, da diese nur standartnormalverteilte zufallszahlen generiert)
eine funktion die mir zu jedem wert den passenden wert der dichtefunktion der normalverteilung zu müh und sigma liefert
eine klasse die mir spliens berechnet, über geben wird eine reihe mit doublewerten, herauskommen soll ein objekt dass mir zu dem punkt eine passende funktion liefert (kubische spliens)
@@hmm
- eine funktion, die zufällszahlen generiert die normalverteilt sind zu parametern müh und sigma (polar methode bringt nix, da diese nur standartnormalverteilte zufallszahlen generiert)
z-Transformation andersrum.
LLAP 🖖
z-Transformation andersrum.
danke. bist du dir da sicher?
das man per z transformation standartnormalverteilte zufallsvariablen bauen kann ist beweis bar, aber sicher dass ich per sima * "standartnormalverteilte ZV" + müh eine zu müh, sigma normalverteilte zufallsvariable bekomme? das klingt zwar auf den ersten blick richtig, könnte aber falsch sein.
hier der php code (polarmethode + umgekehrte z transformation:
function generateNormZV($mueh, $sigma) {
do {
$y1 = mt_rand() / mt_getrandmax();
$y2 = mt_rand() / mt_getrandmax();
$q = pow(2 * $y1 - 1, 2) + pow(2 * $y2 - 1, 2);
}
while ($q > 1);
$p = sqrt((-2 * log($q)) / $q);
$z1 = (2 * $y1 - 1) * $p;
$z2 = (2 * $y2 - 1) * $p;
return array($sigma * $z1 + $mueh, $sigma * $z2 + $mueh);
}
was haltet ihr von dem code?
edit: bevor es zu fragen kommt, die zufalsvariablen sollen natürlich im intervall [0,1] liegen
und die dichte einer normalverteilung zu sigma, müh ist gegeben durch
f(x) = 1/(sigma * sqrt(2 * pi)) * exp(-1/2 * (x-müh)/sigma)^2
mit na abfrage ob sigma gleich null ist die frage nachder dichte auch gegessen
bleibt (wenn der polarcode oben stimmt) nurnoch die frage nach einer classe für spliens
und die dichte einer normalverteilung zu sigma, müh ist gegeben durch
f(x) = 1/(sigma * sqrt(2 * pi)) * exp(-1/2 * (x-müh)/sigma)^2
kleiner fehler, formel müsste so aussehen: f(x) = 1/(sigma * sqrt(2 * pi)) * exp(-1/2 * ((x-müh)/sigma)^2)
hier der code:
function _dichteNorm($zv, $mueh, $sigma){
if($sigma == 0){
return 0;
}
else{
$b = ($zv - $mueh)/$sigma;
return ( (exp(- 1/2 * ($b * $b)) / ($sigma * sqrt(2 * pi)) );
}
}
Hallo hmm,
kleiner fehler, formel müsste so aussehen:
f(x) = 1/(sigma * sqrt(2 * pi)) * exp(-1/2 * ((x-müh)/sigma)^2)
großer Fehler, Formel müsste so aussehen:
$$f(x) = \frac {1}{\sigma\sqrt{2\pi}} e^{-\frac {1}{2} \left(\frac{x-\mu}{\sigma}\right)^2}$$
Du kannst einfach aus der Wikipedia kopieren: Alles was zwischen <math>
und </math>
steht, zwischen $$
und $$
schreiben.
Bis demnächst
Matthias
@@Matthias Apsel
$$f(x) = \frac {1}{\sigma\sqrt{2\pi}} e^{-\frac {1}{2} \left(\frac{x-\mu}{\sigma}\right)^2}$$
Das waren noch Zeiten, als man für diese Formel einfach nur einen 10-DM-Schein aus der Tasche ziehen musste.
LLAP 🖖
Hallo,
mir fehlen zwar die mathematischen Grundlagen, und das Themengebiet ist mir auch so unsympathisch, dass ich sie mir nicht aneignen möchte.
Aber könntest du es bitte den anderen einfacher machen, indem du die Bezeichner so schreibst, wie es auch sonst üblich ist? Deine Bezeichnungen sind doch sehr verwirrend, finde ich.
müh und sigma
Ich kenne Müh' und Not. Für gewöhnlich schreibt man my und sigma, oder noch besser μ und ς.
(polar methode bringt nix, da diese nur standartnormalverteilte zufallszahlen generiert)
Und bitte Standar_d_ mit 'd' am Ende (außer im Russischen und Verwandten: Стандарт).
- eine klasse die mir spliens berechnet
Spleens? Oder doch eher Splines?
So long,
Martin
Hallo Der Martin,
Ich kenne Müh' und Not. Für gewöhnlich schreibt man my und sigma, oder noch besser μ und ς.
Dein Sigma ist ein … was anderes. σ ist das korrekte Zeichen für die Standardabweichung.
Bis demnächst
Matthias
@@Matthias Apsel
ς. Dein Sigma ist ein … was anderes.
Das Schluss-Sigma.
Gab’s in der lateinischen Schrift auch: Schluss-s.
BTW, in der hebräischen Schrift gibt es fünf Buchstaben, die am Wortende (also links) eine andere Form haben.
In der arabischen Schrift haben alle(?) Buchstaben 4 unterschiedliche Formen, je nachdem, ob sie am Anfang, in der Mitte, am Ende oder einzeln stehen. Im Gegensatz zu anderen Schriften werden diese aber durch denselben Zeichencode dargestellt; die unterschiedlichen Formen zu rendern übernimmt die Schriftart.
LLAP 🖖
Hallo Gunnar Bittersmann,
Danke für die Hintergrundinfos.
LLAP 🖖
Was steht nach LLAP? Wird unter Win8.1 nicht angezeigt. Ich vermute, es ist das V zwischen Mittel- und Ringfinger.
Bis demnächst
Matthias
@@Matthias Apsel
Was steht nach LLAP? Wird unter Win8.1 nicht angezeigt.
Ich vermute, es ist das V zwischen Mittel- und Ringfinger.
Die Vermutung lag nahe.
LLAP 🖖
Hallo,
LLAP 🖖
Was steht nach LLAP? Wird unter Win8.1 nicht angezeigt.
nicht nur da. Die DejaVu Sans Mono, die ich unter Linux Mint als bevorzugte Monospace-Schrift habe, kennt das Zeichen anscheinend auch nicht.
Ich vermute, es ist das V zwischen Mittel- und Ringfinger.
Klingt einleuchtend, aber das wäre mir erstens nicht eingefallen, zweitens wäre ich nicht auf die Idee gekommen, dass es das als Unicode-Zeichen geben könnte.
Ciao,
Martin
Guten Abend,
Ich kenne Müh' und Not. Für gewöhnlich schreibt man my und sigma, oder noch besser μ und ς.
Dein Sigma ist ein … was anderes.
... ein sigma eben. Ehrlich gesagt, ich habe aus der Zeichentabelle das Zeichen aus dem Greek-Block rausgepickt, das sigma heißt. Jetzt sehe ich, dass es ein Greek Letter Sigma und ein Greek Letter Final Sigma gibt. Hat Gunnar ja schon erklärt.
Mir sind zwar in der Vergangenheit auch schon die beiden Varianten aufgefallen, bzw. der Unterschied zwischen ihnen, aber ich habe das bisher auf das Design der jeweiligen Schriftart geschoben.
σ ist das korrekte Zeichen für die Standardabweichung.
In Ordnung. Wie gesagt, nicht meine Baustelle.
So long,
Martin
PS: Ist das Buch schon eingetroffen?
Hallo Der Martin,
PS: Ist das Buch schon eingetroffen?
Ja, heute morgen, der Klappentext Verspricht so einiges. Ich hab sogar schon was holländisches gelernt. Bauernfrühstück.
Bis demnächst
Matthias