2017-03-01 15 views
1

私はnumpyにはかなり新しく、私はプロジェクトに取り組んでいますが、解決できないと思われるエラーが発生しました。私のnumpy配列を分割する方法

我々は次の形式

私は最初の部分があるように二つの部分に分割する方法を
[4,5,6,1] 
[3,5,2,0] 
[4,7,3,1] 

でNDarrayを持っていたと想像:

[4,5,6] 
[3,5,2] 
[4,7,3] 

と第二の部分は

です
[1,0,1] 

私は解決策がかなりシンプルでなければならないことを知っていますが、私はそれを理解できないようです。

ありがとうございます!

答えて

3

試してみてください。

a = np.array([[4,5,6,1], 
       [3,5,2,0], 
       [4,7,3,1]]) 

b,c = a[:,:-1], a[:,-1] 

これは、すべての行を保持し、最後の1の列を分割するnumpyののスライスを使用しています。

1
>>> 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]) 
>>> 

これでnumpyの程度も過言ではない、Pythonでスライス配列と呼ばれるもの。

アレイスライスの詳細については、Explain Python's slice notation

を参照してください。
関連する問題