我是Matlab中的新手,我試圖根據高斯(正態)分佈和均勻分佈生成二維隨機數。假設我想要創建一個將用於數據挖掘任務/算法(二維數據過擬合)的2個不同數據集(高斯(1800對)和均勻(1200對))。在Matlab中生成隨機二維點
其他重要問題是數據點應該在0-20的範圍內。
我已經試過這對於高斯分佈
SIGMA = [.5 .05; .05 .5 ];
temp = mvnrnd([-3 0], SIGMA,1800);
這些代碼生成-5之間的數值爲5,我想生成0-20所以我試圖
SIGMA = [0 20];
,但我得到的範圍-20至20
我怎樣才能得到範圍0-20?
到目前爲止你累了什麼?你有沒有看過'rand'和'randn'?給我們展示一些代碼... – Shai
高斯隨機變量沒有硬性界限。極端值不太可能。你能做的最好的就是抵消平均值,這是由mvnrnd的第一個參數控制的。試試[10 10]。 – Peter
'mvnrnd'不是正態分佈(除非你可能選擇合適的參數來適應特殊情況)。使用'randn'代替。 – Daniel