Как поместить несколько случайных чисел в матрицу нулей, которые также выбираются случайным образом? - PullRequest
0 голосов
/ 02 апреля 2020

Я хочу поместить несколько случайных чисел (которые имеют нормальное распределение) в матрицу нулей с python. Место вставки этих случайных чисел также должно быть случайным и соответствовать определенной c вероятностной мере (exp = 0,5). Я могу сделать это с помощью для l oop, но я хочу иметь оптимизированный способ увеличить сложность и время. У вас есть предложения?

1 Ответ

0 голосов
/ 02 апреля 2020

Если вы используете numpy, проверьте следующее:

Немного неясно, что вы подразумеваете под «увеличением сложности и времени». Конечно, вы намерены уменьшить сложность и время.

Если вы не хотите создать массивную матрицу a для l oop, вероятно, все в порядке:

import random

res = []
p = 0.5
mean = 0
stddev = 1
n = 5

for i in range(0, n):
    res.append([])
    for j in range(0, n):
        if random.random() >= p:
            res[i].append(random.normalvariate(mean, stddev))
        else:
            res[i].append(0)

print(res)

...