2017-06-06 37 views
0

我有一個帶有零點的100x100矩陣。我想在矩陣的特定點周圍添加一個10x20的省略號 - 讓位置爲40,60。省略號應填入從0到1的值(中心1 - 邊緣0) - 數字應該是高斯分佈的。 也許有人可以給我一個線索,如何開始這個問題..在python中使用高斯分佈式省略號創建矩陣

回答

0

你需要從一個多變量高斯分佈繪製樣本。你可以使用的函數是numpy.random.multivariate_normal

你的意思是價值矩陣應該是[40, 60]。協方差C矩陣應該是2X2。關於它的值:

C [1,1],C [2,2]:決定沿每個軸的橢圓的寬度。選擇它以便3*C[i,i]幾乎等於沿着該軸的橢圓的寬度。

的對角線值是零,如果你想要的橢圓沿軸線,否則就把較大的值(記住,C[2, 1]==C[1, 2]

但是,請記住,因爲它是一個高斯分佈,輸出值將在距離中心的距離3*C[i,i]處接近0,但它們永遠不會真正爲零。

+0

感謝您的回覆。我沒有得到的是:使用numpy.random.multivariate_normal我得到了被分解的點以10x20爲中心的橢圓[40,60];但是沒有值的分數,對吧? – bor32

+0

對不起:[40,60]是中心.. – bor32

+0

不,有n o點的值。這些觀點要麼出現,要麼不出現。但是,每個點都有可能出現。如果您需要這種可能性,請參閱'https:// docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.stats.multivariate_normal.html' –