Создайте матрицу с np.random.normal - PullRequest
0 голосов
/ 08 мая 2020

Мне нужно создать матрицу nxn, в которой числа в ячейках распределены в соответствии с распределением Гаусса. Этот код может не go хорошо, потому что он заполняет ячейку последовательностью. как я могу сделать?

mu, sigma = 8, 0.5 # mean and standard deviation

def KHead(nx, ny, mu, sigma):
KH0=np.zeros((nx,ny))
N=1000
for k in range(1,ny-1):
    for i in range(0,nx-1):
        KH0[(i,k)]= np.random.normal(mu, sigma, N )

return KH0

1 Ответ

1 голос
/ 08 мая 2020

Отредактировано для границы нулей

np.random.normal принимает аргумент ключевого слова size. Вы можете использовать это так:

KH0 = np.zeros((nx, ny))
KH0[1:-1,1:-1] = np.random.normal(mu, sigma, (nx -2, ny - 2))
...