Python库系列numpy(2)---数组的创建

1.1数组的创建

当明确知道数组的每一个元素的具体数值时,可以使用np.array()函数,将Python列表转化为Numpy数组。

import numpy as np
# 创建一维数组——向量
arr1 = np.array([1,2,3])
print(arr1)
#输出[1 2 3]

# 创建二维数组——行矩阵
arr2 = np.array([[1,2,3]])
print(arr2)
#输出[[1 2 3]]

# 创建二维数组——列矩阵
arr3 = np.array([[1],[2],[3]])
print(arr3)
#输出[[1]
#    [2]
#    [3]]

# 创建二维数组——矩阵
arr4 = np.array([[1,2,3],[4,5,6]])
print(arr4)
# [[1 2 3]
#  [4 5 6]]

1.2创建递增数组

递增数组使用np.arange()函数进行创建(arange全称是array_range)

import numpy as np
# 递增数组
arr1=np.arange(10) #从0开始,到10之前结束
print(arr1)
#输出[0 1 2 3 4 5 6 7 8 9]

# 递增数组
arr2 = np.arange(10,20) #从10开始,到20之前结束
print(arr2)
#输出[10 11 12 13 14 15 16 17 18 19]

# 递增数组
arr3 = np.arange(1,21,2) #从1开始,到21之前结束,步长为2
print(arr3)
#输出[ 1  3  5  7  9 11 13 15 17 19]

1.3创建同值数组

需要创建同值数组时,使用 np.zeros() 函数以及 np.ones() 函数,如示例。

import numpy as np
# 全0数组
arr1=np.zeros(3) # 形状为3的向量
print(arr1)
#输出[0. 0. 0.]

# 全1数组
arr2=np.ones((1,3)) # 形状为(1,3)的矩阵
print(arr2)[[1. 1. 1.]]
#输出

# 全3.14数组
arr3 = 3.14 * np.ones( (2,3) ) # 形状为(2,3)的矩阵
print(arr3)
#输出[[3.14 3.14 3.14]
#    [3.14 3.14 3.14]]

1.4创建随机数组

有时需要创建随机数组,那么可以使用 np.random 系列函数,如示例所示。

其中,运用函数np.random.random()时,需要设置范围参数,示例代码中的范围为10-100

运用np.random.normal()函数时,需要额外输入正态参数,示例代码中正态参数均值为0,标准差为1,这种情况也可以直接用np.random.randn()函数,只需要传入形状参数即可。

import numpy as np
# 0-1 均匀分布的浮点型随机数组
arr1=np.random.random(5) #形状为5的向量
print(arr1)
#输出[0.7847644  0.24964027 0.38995483 0.45276968 0.63851372]

# 创建服从均匀分布且范围在60-100内的3行3列浮点型随机数组
arr2=(100-60)*np.random.random((3,3))+60
print(arr2)
#输出[[89.80853026 78.08057672 71.92327769]
#    [81.26276852 97.415394   88.84894427]
#    [82.85258154 87.63834945 95.76636926]]

# 整数型随机数组
arr3=np.random.randint(10,100,(1,15)) #形状为(1,15)的矩阵
print(arr3)
#输出[[39 25 71 33 93 57 17 29 66 75 35 90 66 56 63]]

# 服从正态分布的随机数组
arr4=np.random.normal(0,1,(2,3)) #形状为(2,3)的二维矩阵
print(arr4)
#输出[[ 0.08771494  0.78397332  0.26497016]
#    [-1.02333037 -2.80205749  0.68838947]]

以上就是numpy数组的基本创建方法了,你学会了吗?

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值