本文主要讲述numpy数组的计算与转置,讲相同尺寸数组的运算与不同尺寸数组的运算,同时介绍数组转置的三种方法。numpy数组的操作比较枯燥,但是都很实用,在很多机器学习、深度学习算法中都会使用到,对numpy数组的一些操作。
目录
1、numpy数组与数的运算
2、numpy相同尺寸的数组运算
3、numpy不同尺寸的数组计算
4、numpy数组的转置
1、numpy数组与数的运算
主要包括数组与数的加减乘除运算,废话不多说,看代码:
import numpy as np
a = np.array([[1, 2, 3, 4, 5, 6], [7, 8, 9, 10, 11, 12]])
# 将数组a里面的每个数+1
b = a+1
print(b)
# 将数组a里面每个数-3
c = a-3
print(c)
# 将数组a里面每个数*3
d = a*3
print(d)
# 将数组a里面每个数除3
e = a/3
print(e)
运行结果如下:
2、numpy相同尺寸的数组运算
numpy相同尺寸的加减乘除运算,代码如下:
import numpy as np
a = np.array([[1, 2, 3, 4, 5, 6], [7, 8, 9, 10, 11, 12]])
b = np.array([[11, 22, 33, 44, 55, 66], [77, 88, 99, 10, 11, 12]])
# 数组a与数组b的加法运算
c = a+b
print(c)
# 数组a与数组b的减法运算
d = a-b
print(d)
# 数组a与数组b的乘法运算
e = a*b
print(e)
# 数组a与数组b的除法运算
f = a/b
print(f)
运行结果如下:
3、numpy不同尺寸的数组计算
numpy不同尺寸的数组也能运算,遵守广播原则,代码如下:
import numpy as np
a = np.array([[1, 2, 3, 4, 5, 6], [7, 8, 9, 10, 11, 12]])
b = np.array([1, 2, 3, 4, 5, 6])
c = np.array([[1], [2]])
print(a)
print(b)
print(c)
# 数组a与数组b的减法
d = a-b
print(d)
# 数组a与数组b的乘法
e = a*b
print(e)
# 数组a与数组c的减法
f = a-c
print(f)
# 数组a与数组c的乘法
g = a*c
print(g)
运行结果如下图:
大家应该可以看出二者的区别,所有数组的运算遵守广播原则。
4、numpy数组的转置
主要讲三种转置方法,具体代码如下:
import numpy as np
a = np.array([[1, 2, 3, 4, 5, 6], [7, 8, 9, 10, 11, 12], [13, 14, 15, 16, 17, 18]])
# 数组转置的三种方法
b = np.transpose(a)
c = a.T
d = a.swapaxes(1, 0)
print(a)
print(b)
print(c)
print(d)
运行结果如下图:
总结:这次讲的东西比较简单,也很枯燥,甚至我都没有什么需要说明的。但是确实numpy数组重要也不可缺少的一部分。大家可以试一下代码,看一下效果,了解数组的运算。可以去搜索一下数组的广播原则了解一下!
|