所以我對numpy很新,我正在嘗試一個項目,但遇到了一個我似乎無法解決的錯誤。如何拆分我的numpy陣列
假設我們按以下格式有一個NDarray
[4,5,6,1]
[3,5,2,0]
[4,7,3,1]
我將如何把它分成兩個部分,使得第一部分是:
[4,5,6]
[3,5,2]
[4,7,3]
,第二部分是
[1,0,1]
我知道解決方案一定很簡單,但我似乎無法弄清楚
在此先感謝!
所以我對numpy很新,我正在嘗試一個項目,但遇到了一個我似乎無法解決的錯誤。如何拆分我的numpy陣列
假設我們按以下格式有一個NDarray
[4,5,6,1]
[3,5,2,0]
[4,7,3,1]
我將如何把它分成兩個部分,使得第一部分是:
[4,5,6]
[3,5,2]
[4,7,3]
,第二部分是
[1,0,1]
我知道解決方案一定很簡單,但我似乎無法弄清楚
在此先感謝!
嘗試:
a = np.array([[4,5,6,1],
[3,5,2,0],
[4,7,3,1]])
b,c = a[:,:-1], a[:,-1]
這將使用numpy的的切片,以保持所有行並在最後一個分裂的列。
>>> import numpy as np
>>> a=np.array([[4,5,6,1],[3,5,2,0],[4,7,3,1]])
>>> a
array([[4, 5, 6, 1],
[3, 5, 2, 0],
[4, 7, 3, 1]])
>>> b=a[:,0:3]
>>> b
array([[4, 5, 6],
[3, 5, 2],
[4, 7, 3]])
>>> c=a[:,3]
>>> c
array([1, 0, 1])
>>>
這是一種叫做陣列片在python,沒有太多numpy的。
有關陣列切片的更多詳細信息,請參見Explain Python's slice notation