Ich habe eine 800x800-Array und ich möchte nur die Elemente im äußeren Teil davon analysieren. Ich brauche ein neues Array ohne die Elemente der Scheibe [5: -5,5: -5]. Es muss nicht unbedingt ein 2d-Array zurückgeben, ein flacher Array oder eine Liste wird auch funktionieren. Beispiel:Wie entfernt man eine 2D-Array-Teilmenge?
import numpy
>>> a = numpy.arange(1,10)
array([1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> a.shape = (3,3)
array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
Ich brauche die Kernelemente zu verwerfen, so etwas wie:
del a[1:2,1:2]
ich zu erwarten haben:
array([1, 2, 3, 4, 6, 7, 8, 9])
Ich versuchte numpy.delete() zu verwenden, aber es scheint für jeweils eine Achse zu funktionieren. Ich frage mich, ob es einen einfacheren Weg gibt, dies zu tun.
gute Wahl, weil ich nicht de Original-Array zu ändern, und es gibt keine Notwendigkeit, den Inhalt des Arrays – user1470350
@ user1470350 wissen - ja, es ist ein schöner Weg, Dinge zu tun :) – fraxel