2017-08-20 41 views
0

我想打印在2D numpy的陣列的一些項目,例如:如何返回numpy數組中的某些列項目?

a = [[1, 2, 3, 4], 
    [5, 6, 7, 8]] 

a = numpy.array(a) 

如何可以僅返回(1和2)另外,(5和6),以及如何可以保持尺寸爲[ 2,2] ??

回答

2

以下:

a[:, [0, 1]] 

將只選擇前兩列(具有索引0和1)。結果將是:

array([[1, 2], 
     [5, 6]]) 
+0

謝謝你,可是,又該如果有很多,如100和列的我只想回到最初51怎麼辦? – AAA

+0

像其他答案一樣:'a [,:51]' – JuniorCompressor

1

您可以使用切片獲取numpy數組的必要部分。 拿到1和2,你需要選擇0的行與前兩列,即

>>> a[0, 0:2] 
array([1, 2]) 

同樣爲5和6

>>> a[1, 0:2] 
array([5, 6]) 

您也可以選擇一個2x2的子陣列,例如

>>> a[:,0:2] 
array([[1, 2], 
     [5, 6]]) 
1

你可以這樣做,

In [44]: a[:, :2] 
Out[44]: 
array([[1, 2], 
     [5, 6]]) 
相關問題