簡體   English   中英

Numpy python 陣列切片

[英]Numpy python array slicing

我有一個如下所示的數組,

[[240.66666667 171.22222222 158.33333333]
 [218.66666667 134.77777778 143.33333333]
 [197.33333333 118.55555556 128.44444444]
 [195.22222222 119.33333333 126.11111111]
 [196.77777778 118.55555556 123.77777778]
 [183.11111111 111.88888889 118.88888889]
 [173.77777778 106.77777778 114.44444444]]

我想對所有行的第一列和第三列進行切片,並想得到這個 output,

[[240.66666667 158.33333333]
 [218.66666667 143.33333333]
 [197.33333333 128.44444444]
 [195.22222222 126.11111111]
 [196.77777778 123.77777778]
 [183.11111111 118.88888889]
 [173.77777778 114.44444444]]

有沒有人有任何想法?

Output 截圖:

在此處輸入圖像描述

你可以只給你想要的列,

>>> data
array([[240.66666667, 171.22222222, 158.33333333],
       [218.66666667, 134.77777778, 143.33333333],
       [197.33333333, 118.55555556, 128.44444444],
       [195.22222222, 119.33333333, 126.11111111],
       [196.77777778, 118.55555556, 123.77777778],
       [183.11111111, 111.88888889, 118.88888889],
       [173.77777778, 106.77777778, 114.44444444]])
>>> data[:, [0,2]]
array([[240.66666667, 158.33333333],
       [218.66666667, 143.33333333],
       [197.33333333, 128.44444444],
       [195.22222222, 126.11111111],
       [196.77777778, 123.77777778],
       [183.11111111, 118.88888889],
       [173.77777778, 114.44444444]])
>>> 

您可以使用numpy.delete function 輕松做到這一點,如下所示:

a = np.array([[240.66666667, 171.22222222, 158.33333333],
              [218.66666667, 134.77777778, 143.33333333],
              [197.33333333, 118.55555556, 128.44444444],
              [195.22222222, 119.33333333, 126.11111111],
              [196.77777778, 118.55555556, 123.77777778],
              [183.11111111, 111.88888889, 118.88888889],
              [173.77777778, 106.77777778, 114.44444444]])

a = np.delete(a,1,axis=1)

有了那段代碼,你就可以得到你想要的output。

Output: 
[[240.66666667 158.33333333]
 [218.66666667 143.33333333]
 [197.33333333 128.44444444]
 [195.22222222 126.11111111]
 [196.77777778 123.77777778]
 [183.11111111 118.88888889]
 [173.77777778 114.44444444]]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM