美文网首页机器学习与数据挖掘机器学习
跟老奶奶说numpy中的mat与array

跟老奶奶说numpy中的mat与array

作者: Rooooooooong | 来源:发表于2018-10-22 22:42 被阅读19次

    1. 区别

    1)np.array更具通用性,np.mat只适用于二维矩阵,维数超过2以后,np.mat就不适用了。

    2)语法上:np.mat既然是为矩阵专门定制的(类比R语言中的matrix),那么肯定有它独特的语法优势

    矩阵乘法

    import numpy as np
    
    a = np.mat('4,3;2,1')
    b = np.mat('1 2;3 4')
    c=np.array([[4, 3], [2, 1]])
    d=np.array([[1, 2], [3, 4]])
    

    np.mat矩阵乘法

    a*b  
    

    np.array对应元素相乘

    c*d  
    

    array中矩阵乘法有两种

    c@d
    np.dot(c,d)
    

    转置 这点上没区别

    a.T
    

    逆矩阵
    np.mat有如下简单写法

    a.I
    

    np.array

    np.linalg.inv(c)
    

    2. 转换

    最后,np.mat和np.array可以相互转化。

    np.asmatrix(c)
    np.asarray(a)
    

    参考
    1The difference between numpy.array and numpy.mat
    2numpy.mat 官方文档

    相关文章

      网友评论

        本文标题:跟老奶奶说numpy中的mat与array

        本文链接:https://www.haomeiwen.com/subject/jtspaftx.html