Numpy.random官方文档:数组创建方法

释放双眼,带上耳机,听听看~!
本文介绍了Numpy官方文档中关于数组创建的方法,包括Numpy.array、Numpy.arange、Numpy.zeros和Numpy.ones等常用的生成方法,以及其参数和用法。通过指定元组或列表中该维度的维度和长度来创建具有任何维度的数组。

numpy.random官方文档:

创建数组

1.Numpy.array()

numpy.array(object,dtype=None,copy=True,order=None,ndmin=0)

参数:

  • object:表示一个数组序列
  • dtype: 通过它可以更改数组的数据类型,可以自填参数
  • copy: 表示数组能否被复制,默认值为True
  • order: 以哪种内存布局创建数组,有 3 个可选值,分别是 C(行序列)/F(列序列)/A(默认)
  • ndmin: 用于指定数组的维度

例子:

a = np.array([127, 128, 129], dtype=np.int8)
>>> a
array([ 127, -128, -127], dtype=int8)
a = np.array([2, 3, 4], dtype=np.uint32)
>>> b = np.array([5, 6, 7], dtype=np.uint32)
>>> c_unsigned32 = a - b
>>> print('unsigned c:', c_unsigned32, c_unsigned32.dtype)
unsigned c: [4294967293 4294967293 4294967293] uint32
>>> c_signed32 = a - b.astype(np.int32)
>>> print('signed c:', c_signed32, c_signed32.dtype)
signed c: [-3 -3 -3] int64

2Numpy.arrange()

注意:numpy.arange的最佳实践是使用整数开始、结束和步进值。关于dtype有一些微妙之处。在第二个示例中,定义了dtype。在第三个示例中,数组是dtype=float,以适应0.1的步长。由于四舍五入错误,有时包括停止值。

np.arange(10)
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> np.arange(2, 10, dtype=float)
array([2., 3., 4., 5., 6., 7., 8., 9.])
>>> np.arange(2, 3, 0.1)
array([2. , 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 2.8, 2.9])

3常用的生成方法

  1. numpy.zeros
np.zeros((2, 3))
array([[0., 0., 0.],
       [0., 0., 0.]])
>>> np.zeros((2, 3, 2))
array([[[0., 0.],
        [0., 0.],
        [0., 0.]],

       [[0., 0.],
        [0., 0.],
        [0., 0.]]])

Ndarray创建函数,例如numpy.ones、numpy.zeros和随机定义基于所需形状的数组。Ndarray创建函数可以通过指定元组或列表中该维度的维度和长度来创建具有任何维度的数组。

Numpy.zeros将创建一个充满指定形状的0值的数组。默认的dtype是float64:

  1. numpy.ones
np.ones((2, 3))
array([[1., 1., 1.],
       [1., 1., 1.]])
>>> np.ones((2, 3, 2))
array([[[1., 1.],
        [1., 1.],
        [1., 1.]],

       [[1., 1.],
        [1., 1.],
        [1., 1.]]])

2随机数组

Numpy.random官方文档:数组创建方法

1. random函数

random函数是最常见的生成随机数的方法,用于在区间[0,1)中生成均匀分布的随机数或随机数数组。

print('生成10个随机数组:',np.random.random(10))
生成10个随机数组: [0.78403643 0.86951582 0.46432236 0.60289239 0.47522589 0.47570346
 0.08911971 0.60222356 0.09509883 0.39883192]

2. rand函数

本函数可以返回一个或一组服从“0~1”均匀分布的随机样本值。随机样本取值范围是[0,1),不包括1。

np.random.rand(d0,d1,d2……dn) 
np.random.rand(2,3)
array([[0.48142724, 0.47994795, 0.3866318 ],
       [0.11259652, 0.97729317, 0.21072319]])

3. randn() 函数

np.random.randn(d0, d1, d2, ..., dn)是一个NumPy函数,用于生成服从标准正态分布(均值为0,标准差为1)的随机数的数组。

这个函数可以有不同的使用方式:

  1. 如果没有参数,函数返回一个单个的浮点数。
  2. 如果函数括号内有一个参数,函数返回一个一维数组,其秩为1。需要注意的是,该数组不能表示向量或矩阵,仅表示一维数据。
  3. 如果函数括号内有两个或多个参数,函数返回具有对应维度的数组,可以表示向量或矩阵。
  4. 另外,np.random.standard_normal()函数与np.random.randn()类似,但是它的输入参数是一个元组(tuple)。

总结一下:

  • np.random.randn()生成服从标准正态分布的随机数数组。
  • 使用不同数量的参数可以控制生成数组的维度。
  • np.random.standard_normal()是一种类似的函数,但接受一个元组作为参数。
np.random.randn(2,3)
array([[-0.23037688, -0.95561502,  0.49889129],
       [ 1.75961354, -0.59473613, -2.66341955]])

4. randint() 函数

np.random.randint(low, high=None, size=None, dtype=int)是一个NumPy函数,用于生成指定范围内的随机整数数组。

该函数的格式如下:

  • 参数low表示生成随机整数的最小值。
  • 参数high表示生成随机整数的最大值(不包含在结果中)。如果未提供high参数,则默认范围为[0, low)。
  • 参数size是可选的,用于指定生成的随机整数数组的维度。如果未设置size,则仅生成一个随机整数。如果想生成多个随机整数,可以使用一个元组来指定数组的维度信息。
  • 参数dtype是可选的,表示生成的随机整数的数据类型,默认为np.int

总结一下:

  • np.random.randint()可以生成指定范围内的随机整数数组。
  • 可以通过设置lowhigh参数来指定生成随机整数的范围。
  • 可以使用size参数来指定生成的随机整数数组的维度。
  • dtype参数可以用来指定生成的随机整数的数据类型。
np.random.randint(1,9,size = [2,3])
array([[2, 8, 3],
       [6, 4, 6]])
本网站的内容主要来自互联网上的各种资源,仅供参考和信息分享之用,不代表本网站拥有相关版权或知识产权。如您认为内容侵犯您的权益,请联系我们,我们将尽快采取行动,包括删除或更正。
AI教程

ChatGPT最佳实践系列第5篇:使用外部工具

2023-11-24 9:46:14

AI教程

基于PINN方法的赛桨结构拓扑优化探索

2023-11-24 9:48:00

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索