Меня смущают ответы, которые я получаю от numpy.random.multivariate_normal
:
У меня есть файл из 50 строк (mean1 mean2 standard_dev1 standard_dev2), и я хотел бы создать большое количество случайных точек в этомраспределение вероятностей.
Вот фрагмент кода, который я использую:
data = np.loadtxt(usefile)
# calculate average and standard deviation
gauss_vals = np.array([])
N = 100
for i in range(len(data)):
mean = (data[:,0][i], data[:,2][i])
cov = [[(data[:,1][i]**2), 0], [0, (data[:,3][i]**2)]]
dat_gauss = np.random.multivariate_normal(mean, cov, (N,1))
output_outfile.write(str(dat_gauss) + '\n')
# END
Когда N = 100 (или меньше), код работает и генерируется правильное количество строк.Однако, когда N превышает 100 (скажем, до 1000), код завершается, но генерирует только 300 строк, по 6 для каждой строки в infile.
Это проблема с памятью или ошибка в random.multivariate_normal
, каксделать этот код, чтобы я мог иметь N = 1 000 000?
Спасибо,
Пэдди