2016-07-11 6 views
-4

Ich möchte zufällige Normalverteilung zwischen 0,1 und 0,3 unter Verwendung Randn() wie kann ich es verwenden?Julia: zufällige Normalverteilung

l versucht, diese eine, aber es funktioniert nicht

randn (0,1: 0,3, (3,1)) # (3,1) drei Zeilen und eine Spalte

+8

das macht keinen Sinn, da die Normalverteilung (im Prinzip) unendliche Unterstützung hat. Was genau willst du machen? –

+0

Die [Normalverteilung] (https://en.wikipedia.org/wiki/Normal_distribution) ist die Glockenkurve, d. H. Sie hat eine von null verschiedene Wahrscheinlichkeit, irgendeine reelle Zahl zu sein. Es ist also unmöglich, normale Zufallszahlen zu erzeugen, die nur auf einen Bereich [a, b] beschränkt sind. Sie können höchstens eine abgeschnittene Normalverteilung haben, aber das ist anders als normal verteilt. Hast du stattdessen gleich verteilt gemeint? Dann wäre das "rand() * (b - a) + a" wie isebarn erwähnt. Sie können die abgeschnittene normale Probenahme über die Zurückweisungsstichprobe durchführen. –

Antwort

-1

Versuchen Sie,

randn(3) * (0.3 - 0.1) + 0.1 

Zufallszahl in einem Bereich [a, b] ist

rand() * (b - a) + a 
+1

Der Punkt ist, dass dies * nicht * garantiert, dass das Ergebnis zwischen 0,1 und 0,3 liegt. –

+0

Entweder einer von uns missversteht das Problem – isebarn