创建Numpy数组的不同方式

使用Numpy内部功能函数

Numpy具有用于创建数组的内置函数。

创建一个一维的数组

arrange是一种广泛使用的函数,用于快速创建数组。

>>> import numpy as np
>>> array=np.arange(20)
>>> array
array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 16,
       17, 18, 19])
>>> array.shape
(20,)
>>> array[3]
3
>>> array[3]=100
>>> print(array)
[  0   1   2 100   4   5   6   7   8   9  10  11  12  13  14  15  16  17
  18  19]
>>>

要验证数组的维度,使用shape属性。

创建一个二维数组

创建二维数组,使用reshape函数链接输出。

>>> array=np.arange(20).reshape(4,5)
>>> array
array([[ 0,  1,  2,  3,  4],
       [ 5,  6,  7,  8,  9],
       [10, 11, 12, 13, 14],
       [15, 16, 17, 18, 19]])
>>> array[3][4]
19
>>>

创建三维数组及更多维度

创建三维数组,使用reshape函数指定3个参数。

>>> array=np.arange(27).reshape(3,3,3)
>>> array
array([[[ 0,  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]]])
>>> array.shape
(3, 3, 3)
>>> np.arange(10,35,3)
array([10, 13, 16, 19, 22, 25, 28, 31, 34])
>>>

使用其它Numpy函数

使用zeros函数创建一个填充零的数组。

使用ones函数创建一个填充1的数组。

empty函数创建一个数组。它的初始内容是随机的,取决于内存的状态。

full函数创建一个填充给定值的n * n数组。

eye函数可以创建一个n * n矩阵,对角线为1s,其他为0。

函数linspace在指定的时间间隔内返回均匀间隔的数字。 例如,下面的函数返回0到10之间的四个等间距数字。

>>> np.zeros((2,4))
array([[0., 0., 0., 0.],
       [0., 0., 0., 0.]])
>>> np.ones((3,4))
array([[1., 1., 1., 1.],
       [1., 1., 1., 1.],
       [1., 1., 1., 1.]])
>>> np.empty((2,3))
array([[8.67491386e-154, 8.90301763e+247, 4.45485182e+217],
       [3.99255565e+252, 6.89966770e+212, 2.64521822e+185]])
>>> np.full((2,2),3)
array([[3, 3],
       [3, 3]])
>>> np.eye(3,3)
array([[1., 0., 0.],
       [0., 1., 0.],
       [0., 0., 1.]])
>>> np.linspace(0,10,num=4)
array([ 0.        ,  3.33333333,  6.66666667, 10.        ])
>>>

从Python列表转换

array是Python列表,list是Numpy数组。

>>> array=np.array([4,5,6])
>>> array
array([4, 5, 6])
>>> list=[4,5,6]
>>> list
[4, 5, 6]
>>> array=np.array(list)
>>> array
array([4, 5, 6])
>>> type(list)
<class 'list'>
>>> type(array)
<class 'numpy.ndarray'>
>>> array=np.array([(1,2,3),(4,5,6)])
>>> array
array([[1, 2, 3],
       [4, 5, 6]])
>>> array.shape
(2, 3)
>>>

使用特殊的库函数

要创建一个填充0到1之间随机值的数组,请使用random函数。

>>> np.random.random((2,2))
array([[0.65559463, 0.36763821],
       [0.54848971, 0.00770224]])
>>>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值