矩阵运算在一定程度上是为了加速计算过程,而矩阵的元素一致性能够让算法的实现更为容易。通过矩阵运算可以让很多原本需要通过循环才能够完成的运算能够在单步的运算中完成。
几个测试如下:
In [26]: data =[[1,5,3],[6,2,4]]
In [27]: data
Out[27]: [[1, 5,3], [6, 2, 4]]
In [28]: arr1 =np.array(data)
In [29]: arr1
Out[29]:
array([[1, 5, 3],
[6, 2, 4]])
In [30]: arr1 +arr1
Out[30]:
array([[ 2,10, 6],
[12, 4, 8]])
In [31]: arr1 *arr1
Out[31]:
array([[ 1,25, 9],
[36, 4, 16]])
In [32]: arr1 **10
Out[32]:
array([[ 1, 9765625, 59049],
[60466176, 1024, 1048576]])
In [33]: arr1 * 3
Out[33]:
array([[ 3,15, 9],
[18, 6, 12]])
在MATLAB中,相应的功能实现可以如下实现:
>> a =[1,5,3;6,2,4]
a =
1 5 3
6 2 4
>> a * 5
ans =
5 25 15
30 10 20
>> a .* a
ans =
1 25 9
36 4 16
>> a .^ 12
ans =
1.0e+09 *
0.0000 0.2441 0.0005
2.1768 0.0000 0.0168
在表示方法上有一定的差异,同时,numpy中的乘法默认是点乘而MATLAB中的则是叉乘,这是有一点差异的。现在仅仅是简单了解一下numpy的基础知识,后续有需要还是得看一下numpy具有的其他矩阵运算功能。
 
 
                     
            
        













 
                    

 
                 
                    