python中array和matrix的区别
二者的区别主要在于在做乘法运算的时候,一个是矩阵乘,一个是数组乘,这里和MATLAb很相似。
调用的时候需要用numpy.array
Numpy matrices必须是2维的,但是numpy arrays (ndarrays) 可以是多维的(1D,2D,3D····ND). Matrix是Array的一个小的分支,包含于Array。所以matrix 拥有array的所有特性。
在numpy中matrix的主要优势是:相对简单的乘法运算符号。例如,a和b是两个matrices,那么a*b,就是积。
import numpy as np a=np.mat('4 3; 2 1') b=np.mat('1 2; 3 4')print(a)# [[4 3]# [2 1]]print(b)# [[1 2]# [3 4]]print(a*b)# [[13 20]# [ 5 8]]
matrix 和 array 都可以通过在have.Tto return the transpose, but matrix objects also have.Hfor the conjugate transpose, and.Ifor the inverse.
In contrast, numpy arrays consistently abide by the rule that operations are applied element-wise. Thus, if a and b are numpy arrays, then a*b is the array formed by multiplying the components element-wise:
c=np.array([[4, 3], [2, 1]]) d=np.array([[1, 2], [3, 4]])print(c*d)# [[4 6]# [6 4]]
To obtain the result of matrix multiplication, you use np.dot :
print(np.dot(c,d))# [[13 20]# [ 5 8]]
Matrix.h包括矩阵类Matrix的定义,Matrix.cpp包括该类成员函数的实现。
一个程序所有的内容,可以分成不同的部分分别放在不同的.cpp文件里。cpp文件里的东西都是相对独立的,在编译compile时不需要与其他文件互通,只需要在编译成目标文件后再与其他的目标文件做一次链接(link)就行了。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!