np.random系列的常用函数

numpy 中的random函数在写代码中有很重要的作用
每次都记不太住每个函数的区别(笑哭)
索性就自己来做一个总结加深一下记忆吧

**

1. np.random.random(size=())

**

作用:产生【0,1】之间的随机数

import numpy as np
x = np.random.random((2,3))
print(x)
[[0.02530484 0.63131895 0.45685136]
 [0.17986004 0.88922722 0.26862242]]

2.np.random.rand()

作用:产生【0,1】之间的均匀分布随机数

import numpy as np
import matplotlib.pyplot as plt
x = np.random.rand(1000,2)
plt.scatter(x[:,0],x[:,1])
plt.xlim([-1,2])
plt.ylim([-1,2])
plt.show()

在这里插入图片描述

3.np.random.randn()

作用:产生标准正态分布的随机数

import numpy as np
import matplotlib.pyplot as plt
x = np.random.randn(1000,2)#产生标准正态分布的1000个数据
plt.scatter(x[:,0],x[:,1])
plt.show()

在这里插入图片描述

4.np.random.uniform(low,high,size)

作用:产生【low,high】之间均匀分布的随机数

import numpy as np
import matplotlib.pyplot as plt
x = np.random.uniform(2,3,(1000,2))#产生(2,3)之间均匀分布的1000个数据
plt.scatter(x[:,0],x[:,1])
plt.xlim([1,4])
plt.ylim([1,4])
plt.show()

在这里插入图片描述

5.np.random.seed()

作用:每次产生相同的随机数
情况:当代码中需要产生随机数,但是想让每次的随机数分布相同,则可以使用该语句。

import numpy as np
x = np.random.rand()
y = np.random.rand()
print(x,y)
>>> x
0.7203244934421581
>>> y
0.00011437481734488664

产生的随机数x,y不同

import numpy as np
np.random.seed(1)
x = np.random.rand()
np.random.seed(1)
y = np.random.rand()
print(x,y)
>>> x
0.417022004702574
>>> y
0.417022004702574

产生的x,y随机数相同
注意:需要每次在产生随机数之前都需要中下种子,否则还是会产生不相同的随机数

6.np.random.randint(low, high=None, size=None)

作用返回一个随机整型数,范围从低(包括)到高(不包括),即[low, high)。如果没有写参数high的值,则返回[0,low)的值。

>>> np.random.randint(3,size = (2,3))
array([[0, 2, 1],
       [2, 0, 2]])
>>> np.random.randint(3,6,size = (2,3))
array([[4, 5, 3],
       [3, 5, 3]])

个人感觉常用的是这么几种,就先写这么多吧

发布了11 篇原创文章 · 获赞 6 · 访问量 608

猜你喜欢

转载自blog.csdn.net/qq_35896136/article/details/104378168