numpy生成均匀分布

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import numpy as np

#生成[10,10]的矩阵, 元素是大小<2的整数,元素服从均匀分布,
y1 = np.random.choice(2,size=[10,10])
print(y1)
print(type(y1[0][0]))
'''
[[1 0 0 1 0 0 1 0 0 1]
[0 0 0 1 1 0 1 1 1 0]
[1 1 0 0 1 1 1 0 0 0]
[0 0 1 0 1 1 1 0 1 1]
[1 0 0 0 1 1 0 1 1 1]
[0 1 1 1 1 1 1 0 0 1]
[0 1 0 0 0 0 1 0 1 1]
[1 1 0 0 0 0 0 0 0 1]
[1 0 1 1 0 1 0 0 0 1]
[1 1 0 0 1 0 0 1 1 1]]
<class 'numpy.int64'>
'''

#选项:无重复
y2 = np.random.choice(10,size=[10], replace=False)
print(y2)
#[2 7 1 5 0 3 8 4 6 9]

#选项:更改概率分布,1的概率接近1,0的概率接近0
y3 = np.random.choice(2, size=[10], p=[0.0001,0.9999])
print(y3)
#[0 0 0 0 0 0 0 0 0 0]

转载请注明来源 https://tianweiye.github.io