matlabでn値に確率をランダムに分散するにはどうすればよいですか? 128個のベクトルがある場合。それらすべての合計が 1 になるように、それらすべてにランダムな確率を割り当てたいと思います。
例 n=4 p1=0.37 p2=0.21 p3=0 p4=0.42
matlabでn値に確率をランダムに分散するにはどうすればよいですか? 128個のベクトルがある場合。それらすべての合計が 1 になるように、それらすべてにランダムな確率を割り当てたいと思います。
例 n=4 p1=0.37 p2=0.21 p3=0 p4=0.42
どの程度ランダムである必要があるかに応じて、ロジャー スタッフォードはより厳格なアプローチを採用します。
ベクトルをその要素の合計で割るだけです。たとえば、長さ 4 のベクトルの場合、次のことができます。
>> v = rand(4, 1);
>> v = v/sum(v)
v =
0.2951
0.3281
0.0460
0.3308
>> sum(v)
ans =
1.0000
質問でどのような分布が必要かを述べていないため、均一に分布した数値が必要であると想定していることに注意してください。