NumPy矩陣庫


NumPy - 矩陣庫

NumPy 包包含一個 Matrix庫numpy.matlib。此模組的函式返回矩陣而不是返回ndarray物件。

matlib.empty()

matlib.empty()函式返回一個新的矩陣,而不初始化元素。 該函式接受以下引數。

numpy.matlib.empty(shape, dtype, order)

其中:

序號 引數及描述
1. shape 定義新矩陣形狀的整數或整數元組
2. Dtype 可選,輸出的資料型別
3. order C 或者 F

範例

import numpy.matlib 
import numpy as np 
print np.matlib.empty((2,2))  
# 填充為亂數據

輸出如下:

[[ 2.12199579e-314,   4.24399158e-314] 
 [ 4.24399158e-314,   2.12199579e-314]]

numpy.matlib.zeros()

此函式返回以零填充的矩陣。

import numpy.matlib 
import numpy as np 
print np.matlib.zeros((2,2))

輸出如下:

[[ 0.  0.] 
 [ 0.  0.]])

numpy.matlib.ones()

此函式返回以一填充的矩陣。

import numpy.matlib 
import numpy as np 
print np.matlib.ones((2,2))

輸出如下:

[[ 1.  1.] 
 [ 1.  1.]]

numpy.matlib.eye()

這個函式返回一個矩陣,對角線元素為 1,其他位置為零。 該函式接受以下引數。

numpy.matlib.eye(n, M,k, dtype)

其中:

序號 引數及描述
1. n 返回矩陣的行數
2. M 返回矩陣的列數,預設為n
3. k 對角線的索引
4. dtype 輸出的資料型別

範例

import numpy.matlib 
import numpy as np 
print np.matlib.eye(n =  3, M =  4, k =  0, dtype =  float)

輸出如下:

[[ 1.  0.  0.  0.] 
 [ 0.  1.  0.  0.] 
 [ 0.  0.  1.  0.]])

numpy.matlib.identity()

numpy.matlib.identity()函式返回給定大小的單位矩陣。單位矩陣是主對角線元素都為 1 的方陣。

import numpy.matlib 
import numpy as np 
print np.matlib.identity(5, dtype =  float)

輸出如下:

[[ 1.  0.  0.  0.  0.] 
 [ 0.  1.  0.  0.  0.] 
 [ 0.  0.  1.  0.  0.] 
 [ 0.  0.  0.  1.  0.] 
 [ 0.  0.  0.  0.  1.]]

numpy.matlib.rand()

·numpy.matlib.rand()`函式返回給定大小的填充隨機值的矩陣。

範例

import numpy.matlib 
import numpy as np 
print np.matlib.rand(3,3)

輸出如下:

[[ 0.82674464  0.57206837  0.15497519] 
 [ 0.33857374  0.35742401  0.90895076] 
 [ 0.03968467  0.13962089  0.39665201]]

注意,矩陣總是二維的,而ndarray是一個 n 維陣列。 兩個物件都是可互換的。

範例

import numpy.matlib 
import numpy as np  

i = np.matrix('1,2;3,4')  
print i

輸出如下:

[[1  2] 
 [3  4]]

範例

import numpy.matlib 
import numpy as np  

j = np.asarray(i)  
print j

輸出如下:

[[1  2] 
 [3  4]]

範例

import numpy.matlib 
import numpy as np  

k = np.asmatrix (j)  
print k

輸出如下:

[[1  2] 
 [3  4]]