熱線電話:13121318867

登錄
首頁精彩閱讀Python里面的矩陣與矢量化運算
Python里面的矩陣與矢量化運算
2017-05-11
收藏

Python里面的矩陣與矢量化運算

Python在數據挖掘、數據分析中用的很多。最基礎的矩陣與矢量化運算需要掌握。

需要下載安裝的包:Numpy

Windows下cmd窗口輸入以下命令即可成功安裝

>pip install numpy
1、創建矩陣
>>> from numpy import *
>>> a = mat([[1,2],[3,4]])
>>> a
matrix([[1, 2],
       [3, 4]])
>>> b = [1,2,3,4]
>>> b = mat(b)
>>> type(b)
如果不是用的from numpy import *,而是import numpy as np
>>> b = [1,2,3,4]
>>> b = np.mat(b)
>>> type(b)
2、生成隨機矩陣
>>> c = random.rand(3,5)
>>> c
array([[ 0.64604414, 0.45126794, 0.73007667, 0.15882401, 0.05607741],
      [ 0.10858948, 0.82678284, 0.66219831, 0.8357802 , 0.67448717],
      [ 0.74783459, 0.13746508, 0.99414465, 0.63919601, 0.80849361]])
生成3x4的全一矩陣
>>> d = ones([3,4])
>>> d
array([[ 1., 1., 1., 1.],
      [ 1., 1., 1., 1.],
      [ 1., 1., 1., 1.]])
3、矩陣的元素運算
>>> 5*d
array([[ 5., 5., 5., 5.],
      [ 5., 5., 5., 5.],
      [ 5., 5., 5., 5.]])
矩陣與矩陣的乘法還是要遵循線性代數的法則,第一個矩陣的列數與第二個矩陣的行數要相同,這里就不贅述了。
4、矩陣的切片
>>> c
array([[ 0.64604414, 0.45126794, 0.73007667, 0.15882401, 0.05607741],
      [ 0.10858948, 0.82678284, 0.66219831, 0.8357802 , 0.67448717],
      [ 0.74783459, 0.13746508, 0.99414465, 0.63919601, 0.80849361]])
取第一行
>>> c[0]
array([ 0.64604414, 0.45126794, 0.73007667, 0.15882401, 0.05607741])
取第一列,原理是先對矩陣進行轉置,再取第一行,就是原矩陣的第一列了。
>>> c.T[0]
array([ 0.64604414, 0.10858948, 0.74783459])
5、矩陣的線性代數運算
>>> a
matrix([[1, 2],
       [3, 4]])
(1)、行列式
>>> linalg.det(a)
-2.0000000000000004
(2)矩陣的逆
>>> linalg.inv(a)
matrix([[-2. , 1. ],
       [ 1.5, -0.5]])
(3)、矩陣的轉置
>>> a.T
matrix([[1, 3],
       [2, 4]])
(4)、矩陣的秩
>>> linalg.matrix_rank(a)
2
(5)、可逆矩陣對應線性方程求解
>>> linalg.solve(a,B)
array([-1., 1.])
a對應稀疏矩陣,B對應右端項的非齊次方程的解,即為【-1,1】。


數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢