日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

《Python Cookbook 3rd》笔记(3.10):矩阵与线性代数运算

發布時間:2023/12/13 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《Python Cookbook 3rd》笔记(3.10):矩阵与线性代数运算 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

矩陣與線性代數運算

問題

你需要執行矩陣和線性代數運算,比如矩陣乘法、尋找行列式、求解線性方程組等等。

解法

NumPy 庫有一個矩陣對象可以用來解決這個問題。
矩陣類似于 3.9 小節中數組對象,但是遵循線性代數的計算規則。下面的一個例子
展示了矩陣的一些基本特性:

>>> import numpy as np >>> m = np.matrix([[1,-2,3],[0,4,5],[7,8,-9]]) >>> m matrix([[ 1, -2, 3],[ 0, 4, 5],[ 7, 8, -9]])>>> # Return transpose >>> m.T matrix([[ 1, 0, 7],[-2, 4, 8],[ 3, 5, -9]]) >>> # Return inverse >>> m.I matrix([[ 0.33043478, -0.02608696, 0.09565217],[-0.15217391, 0.13043478, 0.02173913],[ 0.12173913, 0.09565217, -0.0173913 ]]) >>> # Create a vector and multiply >>> v = np.matrix([[2],[3],[4]]) >>> v matrix([[2],[3],[4]]) >>> m * v matrix([[ 8],[32],[ 2]]) >>>

可以在 numpy.linalg 子包中找到更多的操作函數,比如:

>>> import numpy.linalg >>> # Determinant >>> numpy.linalg.det(m) -229.99999999999983 >>> # Eigenvalues >>> numpy.linalg.eigvals(m) array([-13.11474312, 2.75956154, 6.35518158]) >>> # Solve for x in mx = v >>> x = numpy.linalg.solve(m, v) >>> x matrix([[ 0.96521739],[ 0.17391304],[ 0.46086957]]) >>> m * x matrix([[ 2.],[ 3.],[ 4.]]) >>> v matrix([[2],[3],[4]]) >>>

討論

很顯然線性代數是個非常大的主題,已經超出了本書能討論的范圍。但是,如果你需要操作數組和向量的話, NumPy 是一個不錯的入口點。可以訪問 NumPy官網獲取更多信息。

總結

以上是生活随笔為你收集整理的《Python Cookbook 3rd》笔记(3.10):矩阵与线性代数运算的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。