2017-09-13 6 views
-1

値がバイモーダル分布を持つMatlabで列ベクトル(nx1)を生成しようとしています。列ベクトルのすべての値を1つの指定された値に合計し、分布の最小値と最大値を指定できるようにします。Matlabの列ベクトルで等価になるようにバイモーダル分布を作成する

ありがとうございます!

+0

あなたがこれまでに試してみましたか? – m7913d

+0

@ m7913d私は、この一様な配布例、https://www.mathworks.com/matlabcentral/fileexchange/9700-random-vectors-with-fixed-sumを使って作業しようとしていますが、私が苦労している部分はバイモーダルです分布。 Matlabでバイモダル分布を生成する人のドキュメントはないようで、配列がバイモーダルな分布であるかどうかだけを確認します。私が考えることができる唯一の方法は、バイモダル分布のための実際の関数を使用することです(ピークの2つのexp()を使用します) – user3546200

答えて

0

二峰性分布は、2つの正規分布の重ね合わせをf.e、二つのピークを持つ分布である:

n = 100; 
X = 1:n; 
PDF = normpdf(X, 30, 5) + 5*normpdf(X, 60, 10); % take the combination of two normal distrubtions 
PDF = PDF/sum(PDF); % normalise it, i.e. sum equals to one. 

figure 
plot(X, PDF); % plot the result 

enter image description here

関連する問題