21、Numpy矩陣庫(matrix)

1、番外說明

大家好,我是小P,本系列是本人對Python模塊Numpy的一些學習記錄,總結於此一方面方便其它初學者學習,另一方面害怕自己遺忘,希望大家喜歡。此外,對“目標檢測/模型壓縮/語義分割”感興趣的小夥伴,歡迎加入QQ羣 813221712 討論交流,進羣請看羣公告!(可以點擊如下連接直接加入!)
點擊鏈接加入羣聊【Object Detection】:https://jq.qq.com/?_wv=1027&k=5kXCXF8

2、正題

參考鏈接:

https://www.runoob.com/numpy/numpy-matrix.html

NumPy 中包含了一個矩陣庫 numpy.matlib,該模塊中的函數返回的是一個矩陣,而不是 ndarray 對象。

一個 的矩陣是一個由行(row)列(column)元素排列成的矩形陣列。

矩陣裏的元素可以是數字、符號或數學式。以下是一個由 6 個數字元素構成的 2 行 3 列的矩陣:

在這裏插入圖片描述

2.1 matlib.empty()

matlib.empty() 函數返回一個新的矩陣,語法格式爲:

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

參數說明:

● shape: 定義新矩陣形狀的整數或整數元組
● Dtype: 可選,數據類型
● order: C(行序優先) 或者 F(列序優先)

實例:numpy.matlib.empty使用

import numpy.matlib 
import numpy as np
 
print (np.matlib.empty((2,2)))
# 填充爲隨機數據

輸出結果爲:

[[-1.49166815e-154 -1.49166815e-154]
 [ 2.17371491e-313  2.52720790e-212]]

2.2 numpy.matlib.zeros()

numpy.matlib.zeros() 函數創建一個以 0 填充的矩陣。

實例:numpy.matlib.zeros使用

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

輸出結果爲:

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

2.3 numpy.matlib.ones()

numpy.matlib.ones()函數創建一個以 1 填充的矩陣。

實例:numpy.matlib.ones使用

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

輸出結果爲:

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

2.4 numpy.matlib.eye()

numpy.matlib.eye() 函數返回一個矩陣,對角線元素爲 1,其他位置爲零。

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

參數說明:

● n: 返回矩陣的行數
● M: 返回矩陣的列數,默認爲 n
● k: 對角線的索引
● dtype: 數據類型

實例:numpy.matlib.eye使用

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.]]

2.5 numpy.matlib.identity()

numpy.matlib.identity() 函數返回給定大小的單位矩陣。

單位矩陣是個方陣,從左上角到右下角的對角線(稱爲主對角線)上的元素均爲 1,除此以外全都爲 0。
在這裏插入圖片描述
實例:numpy.matlib.identity使用

import numpy.matlib 
import numpy as np 
 
# 大小爲 5,類型位浮點型
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.]]

2.6 numpy.matlib.rand()

numpy.matlib.rand() 函數創建一個給定大小的矩陣,數據是隨機填充的。

實例:numpy.matlib.rand使用

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

輸出結果爲:

[[0.23966718 0.16147628 0.14162   ]
 [0.28379085 0.59934741 0.62985825]
 [0.99527238 0.11137883 0.41105367]]

矩陣總是二維的,而 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]]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章