2017-04-06 59 views
-5

爲什麼np.array([4, 3, 0]) + np.array([0, 2, 2])會給出一個輸出array([4,5,2])爲什麼np.array([4,3,0])+ np.array([0,2,2])給出數組的輸出([4,5,2])

任何人都可以詳細解釋一下嗎?

+3

Elementwisse加法。你還期望什麼? –

+0

@WillemVanOnsem(挑剔,但更)語義上,矢量加法。 Numpy的數組最初設計用於數值計算,數組和矩陣表示數學向量和矩陣。 – Jules

+1

(雙重挑剔)數學'矢量加法'定義爲不直接參考座標系。如果向量表示爲笛卡爾座標,則可以通過對相應分量求和來執行向量相加,即「元素向量」。 numpy中的基本對象是一個多維數組。在數學,物理或工程中使用的向量和矩陣的映射並不準確。 – hpaulj

回答

0

它將numpy數組中的每個元素與另一個numpy數組中的相同索引處的元素相加。

4 + 0 = 0 
3 + 2 = 5 
0 + 2 = 2 
+0

你不應該說列表,因爲添加'list'對象連接它們:'[1] + [2]'給出'[1,2]'' – Michael

1

這是一個正常的矢量添加。您只需將矢量中的每個元素添加到另一個矢量中的相應元素即可。

[4, 3, 0] 
+[0, 2, 2] 
___________ 
=[4, 5, 2] 

注意:如果矢量相加的結果大於9,則額外的數字不會溢出到矢量中的下一個項目。例如。

[4, 9, 0] 
+[0, 2, 2] 
___________ 
=[4,11, 2] 

如果您認爲此答案有用,我建議您選取線性代數。

0

另外,如果要追加數組,你可以使用:

np.append(np.array([4, 3, 0]), np.array([0, 2, 2])) 
相關問題