numpy對於矩陣的一些基本操作

2021-10-06 21:23:04 字數 1087 閱讀 7839

import numpy as np

n1 = np.array([[

1,2]

,[3,

4]])

n2 = np.array([[

1,2]

,[3,

6]])

# 矩陣加矩陣,對應位置相加,但是shape必須相同(也就是必須都是2*2的)

print

(n1+n2)

# [[ 2 4]

# [ 6 10]]

# 矩陣與標量相加,就是將標量挨個加到矩陣元素中去

print

(n1+5)

# [[6 7]

# [8 9]]

# 求矩陣的轉置

print

(n1.t)

# [[1 3]

# [2 4]]

# 對角矩陣(第乙個引數是對角線元素):

n3 = np.diag([5

,4,5

], k=0)

print

(n3)

# [[5 0 0]

# [0 4 0]

# [0 0 5]]

# 單位矩陣:

print

(np.eye(

3, dtype=

int)

)#[[1 0 0]

# [0 1 0]

# [0 0 1]]

# 求矩陣的逆(矩陣與自己的逆相乘得到就是單位矩陣)

# 矩陣存在逆的條件:1.必須是方陣,即行數等於列數,2.列向量之間線性無關

a =[[1

,3],

[2,7

]] n4 = np.array(a)

print

(np.linalg.inv(a)

)#[[ 7. -3.]

# [-2. 1.]]

# 矩陣的乘法

print

(np.dot(n1, n2)

)# [[ 7 14] # [15 30]]

備註:print(n1*n2)的結果是將對應位置的值進行相乘,與矩陣相乘不一樣

關於numpy的一些矩陣運算 tile函式

參考 假如現在我們有乙個向量y 1,0,1 和乙個矩陣x 1,2,3 4,5,6 7,8,9 10,11,12 我們的目的就是求解x的每乙個行向量和y向量的和。那麼我們該如何求解呢?由於x,y不是同型矩陣,所以是不能直接相加的。但是我們可以把每個行向量與y相加,也就是如下的程式。如果我們不計效率的話...

numpy和torch的一些矩陣運算語句

僅作為記錄,大佬請跳過 矩陣相乘 x w1 numpy h x.dot w1 torch h x.mm w1 大於0的保留,小於0的令為0 達到啟用函式relu的效果 numpy h relu np.maximum h,0 torch h relu h.clamp min 0 兩個陣列相減,相減後各...

numpy的一些用法

安裝numpy windows安裝pip即可,具體方法參考pip官網 安裝方法 pip install numpy 1.14.3 cp27 none win amd64.whl 功能介紹 ndarray ndarray具有多維性。ndarray的元素可以通過索引的方式進行訪問。在numpy中,nda...