2017-12-28 18 views
-1

Ich habe folgendes Array:Negatives Vorzeichen in Python Subseting Operationen

np.random.seed(12) 

s = np.random.randn(5, 5) 

Was das negative Vorzeichen hat in Untersetzvorgang impliziert? I.e

s[1:-1, :] 

Bedeutet es einfach das Entfernen einer Zeile in diesem Fall?

+0

https://docs.scipy.org/doc/numpy-1.13.0/reference/arrays.indexing.html –

+1

Es bedeutet, dass Sie eine Ansicht erstellen, wo die erste und die letzte Zeile entfernt werden. Natürlich werden diese nicht wirklich entfernt, aber die View sieht diese Zeilen nicht. –

Antwort

1

Blick auf das folgende Beispiel (dies ist kein Code, natürlich!)

arr = [1 , 2 , 3 , 4 , 5] 
arr[0] = 1 
arr[1] = arr[-4] = 2 
arr[2] = arr[-3] = 3 
arr[3] = arr[-2] = 4 
arr[4] = arr[-1] = 5 

negativen Vorzeichen in Arrays bezieht sich auf Indizes in rückwärts (von den letzten Punkt zum ersten, mit -1 bis -(arr.__len__()+1) Start

1

Nein bedeutet dies nicht die Entfernung bedeuten, mit:

s[1:-1, :] 

Sie nur jede Zeile mit Ausnahme der ersten und der letzten verwenden, so, wenn Sie dies tun:

s=np.random.randn(5,5) 
print(s[1:-1, :]) 

dann erhalten Sie ein 2D-Array von Randoms mit 5 Arrays von 5 Randoms. Und wenn Sie es ausdrucken, erhalten Sie s [1 (was ist das sec-Element)] - s [sec letztes Element]. Aber S wird immer noch 5 Arrays haben.

Verwandte Themen