今天复习的numpy内容是关于矩阵的行列变换等方面。掌握矩阵的行列变换,便于矩阵的计算。
文章目录
目录
前言
记录numpy和深度学习的结合使用过程。
提示:以下是本篇文章正文内容,下面案例可供参考
一、显示NumPy的版本型号
代码如下:
import numpy
np = numpy.__version__
print(np)
二、创建行/列优先矩阵
1.行优先矩阵
代码如下:
import numpy as np #numpy生成行优先 10x11 矩阵
A = np.arange(1, 111).reshape((10, 11), order = 'C') #生成一个1到110的矩阵
print(A)
#运行结果如下
[[ 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 27 28 29 30 31 32 33]
[ 34 35 36 37 38 39 40 41 42 43 44]
[ 45 46 47 48 49 50 51 52 53 54 55]
[ 56 57 58 59 60 61 62 63 64 65 66]
[ 67 68 69 70 71 72 73 74 75 76 77]
[ 78 79 80 81 82 83 84 85 86 87 88]
[ 89 90 91 92 93 94 95 96 97 98 99]
[100 101 102 103 104 105 106 107 108 109 110]]
2.列优先矩阵
代码如下:
import numpy as np #numpy生成列优先 10x11 矩阵
B = np.arange(1, 111).reshape((10, 11), order = 'F') #生成一个1到110的矩阵
print(B)
#运行结果如下
[[ 1 11 21 31 41 51 61 71 81 91 101]
[ 2 12 22 32 42 52 62 72 82 92 102]
[ 3 13 23 33 43 53 63 73 83 93 103]
[ 4 14 24 34 44 54 64 74 84 94 104]
[ 5 15 25 35 45 55 65 75 85 95 105]
[ 6 16 26 36 46 56 66 76 86 96 106]
[ 7 17 27 37 47 57 67 77 87 97 107]
[ 8 18 28 38 48 58 68 78 88 98 108]
[ 9 19 29 39 49 59 69 79 89 99 109]
[ 10 20 30 40 50 60 70 80 90 100 110]]
三、置换矩阵
1.行变换
代码如下:
import numpy as np
print("置换矩阵的行变换:") #这里的B矩阵为上面生成10x11的列优先矩阵
B[[0,1], :] = B[[1,0], :] #第1行和第2行换位置
B[[2,4], :] = B[[4,2], :] #第3行和第5行换位置
B
#运行结果如下
array([[ 2, 12, 22, 32, 42, 52, 62, 72, 82, 92, 102],
[ 1, 11, 21, 31, 41, 51, 61, 71, 81, 91, 101],
[ 5, 15, 25, 35, 45, 55, 65, 75, 85, 95, 105],
[ 4, 14, 24, 34, 44, 54, 64, 74, 84, 94, 104],
[ 3, 13, 23, 33, 43, 53, 63, 73, 83, 93, 103],
[ 6, 16, 26, 36, 46, 56, 66, 76, 86, 96, 106],
[ 7, 17, 27, 37, 47, 57, 67, 77, 87, 97, 107],
[ 8, 18, 28, 38, 48, 58, 68, 78, 88, 98, 108],
[ 9, 19, 29, 39, 49, 59, 69, 79, 89, 99, 109],
[ 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110]])
2.列变换
代码如下:
print("置换矩阵的列变换:")
B[:, [0,1]] = B[:, [1,0]] #第1列和第2列换位置
B[:, [2,4]] = B[:, [4,2]] #第3列和第5列换位置
B
#运行结果如下
array([[ 12, 2, 42, 32, 22, 52, 62, 72, 82, 92, 102],
[ 11, 1, 41, 31, 21, 51, 61, 71, 81, 91, 101],
[ 15, 5, 45, 35, 25, 55, 65, 75, 85, 95, 105],
[ 14, 4, 44, 34, 24, 54, 64, 74, 84, 94, 104],
[ 13, 3, 43, 33, 23, 53, 63, 73, 83, 93, 103],
[ 16, 6, 46, 36, 26, 56, 66, 76, 86, 96, 106],
[ 17, 7, 47, 37, 27, 57, 67, 77, 87, 97, 107],
[ 18, 8, 48, 38, 28, 58, 68, 78, 88, 98, 108],
[ 19, 9, 49, 39, 29, 59, 69, 79, 89, 99, 109],
[ 20, 10, 50, 40, 30, 60, 70, 80, 90, 100, 110]])
总结
以上就是今天复习的内容,有不对的地方欢迎各位大神指正。