生成Numpy的一维数组
x=np.array([1.0,2.0,3.0]) #生成数组
print(x)
x=np.array([1.1,2.2,3.3])
print(y.round(1)) #矩阵的结果保留一位小数#结果
[1. 2. 3.] #生成的数组默认省略小数点后面的0
[1.1 2.2 3.3]
Numpy数组的算术运算
x=np.array([1,2,3])
y=np.array([4,5,6])
'''算术运算按位运算即可'''
print(x+y) #结果:[5 7 9]
print(x-y) #结果:[-3 -3 -3]
print(x*y) #结果:[ 4 10 18]
print(x/y) #结果:[0.25 0.4 0.5 ]
#广播(数组中各个元素和标量之间的运算)
print(x/2) #结果:[0.5 1. 1.5]
Numpy的N维数组
A=np.array([[1,2],[3,4]]) #生成二维数组
print(A)
#结果:
[[1 2][3 4]]
print(A.shape) #输出矩阵的行列:(2,2)
print(A.dtype) #输出矩阵元素的数据类型:int32 #int32,int64是numpy独有的,python一般还是int
访问元素
访问元素和c语言数组一样,都是从0开始索引。
A=np.array([[1,2],[3,4],[5,6]])
print(A[0]) #结果:[1 2]
print(A[0][1]) #结果:2#遍历行
for row in A:print(row)
#结果
[1 2]
[3 4]
[5 6]'''使用数组访问元素'''
A=A.flatten() #将A转换为一维数组
print(A) #结果:[1 2 3 4 5 6]
B=A[np.array([0,2,4])] #获取索引为0,2,4的元素,结果为列表
print(B) #结果:[1 3 5]print(A>15) #得到一个布尔型的数组#结果:[False False False True True True]
C=A[A>15] #根据布尔型数组中True,取出相应的值
print(C) #结果:[4 5 6]
Numpy常用函数
np.sum() #对数组内所有的元素相加
np.maximum(x,y) #返回x,y中的最大值
np.ndim(A) #返回numpy数组的维数
np.dot(A,B) #对两矩阵进行相乘
np.max(A) #求数组A中的最大值
np.arange(0.0,3.0,0.1) #第三个参数是步长,基本和range()一样,range()不支持小数