4)均匀分布随机函数:np.random.uniform()
用法:生成指定范围内的服从均匀分布的随机数;
array11 = np.random.uniform(1,10,5) display(array11) # --------------------------------- array12 = np.random.uniform(1,10,(2,3)) display(array12)
① 结果如下
5)np.random.seed():按照种子来生成随机数,种子一样,则生成的随机数结果必一致
① 操作如下
np.random.seed(3) a = np.random.rand(3) display(a) np.random.seed(3) b = np.random.rand(3) display(b) # -------------------------- np.random.seed() a = np.random.rand(3) display(a) np.random.seed() b = np.random.rand(3) display(b)
② 结果如下
6)np.random.shuffle():打乱数组元素顺序(原地操作数组)
c = np.arange(10) display(c) np.random.shuffle(c) display(c)
① 结果如下
7)np.random.choice():按照指定概率从指定数组中,生成随机数;
① np.random.choice()函数的用法说明
d = np.random.choice([1,2,3,4], p=[0.1, 0.2, 0.3, 0.4]) display(d)
说明:上述函数第一个参数表示的是数组,第二个参数表示的是概率值。上述函数的含义是当进行n多次重复实验的时候,抽取1的概率为0.1,抽取2的概率为0.2,抽取3的概率为0.3,抽取4的概率为0.4。
② 结果如下
③ 随即进行10000次重复实验,检测每一个数,被抽取到的概率
list1 = [0,0,0,0] for i in range(100000): f = np.random.choice([1,2,3,4], p=[0.1, 0.2, 0.3, 0.4]) list1[f-1] = list1[f-1] + 1 display(list1) result_list = [value/sum(list1) for value in list1] display(result_list)
④ 结果如下
⑤ 模拟进行100000次掷硬币重复实验,检测每一面,被抽取到的概率
list1 = [0,0] for i in range(100000): f = np.random.choice([0,1], p=[0.5,0.5]) list1[f] = list1[f] + 1 display(list1) result_list = [value/sum(list1) for value in list1] display(result_list)
⑥ 结果如下






