Hinzufügen eines Feldes zu einem strukturierten numpy Array

Was ist der sauberste Weg, um ein Feld zu einem strukturierten numpy Array hinzuzufügen? Kann es destruktiv gemacht werden, oder ist es notwendig, ein neues Array zu erstellen und die vorhandenen Felder zu kopieren? Sind die Inhalte jedes Feldes zusammenhängend im Speicher gespeichert, so dass ein solches Kopieren effizient durchgeführt werden kann?

2 Solutions collect form web for “Hinzufügen eines Feldes zu einem strukturierten numpy Array”

Wenn du numpy 1.3 benutzt hast, gibt es auch numpy.lib.recfunctions.append_fields ().

Für viele Installationen müssen Sie import numpy.lib.recfunctions darauf zuzugreifen. import numpy wird es nicht erlauben, die numpy.lib.recfunctions zu sehen

 import numpy def add_field(a, descr): """Return a new array that is like "a", but has additional fields. Arguments: a -- a structured numpy array descr -- a numpy type description of the new fields The contents of "a" are copied over to the appropriate fields in the new array, whereas the new fields are uninitialized. The arguments are not modified. >>> sa = numpy.array([(1, 'Foo'), (2, 'Bar')], \ dtype=[('id', int), ('name', 'S3')]) >>> sa.dtype.descr == numpy.dtype([('id', int), ('name', 'S3')]) True >>> sb = add_field(sa, [('score', float)]) >>> sb.dtype.descr == numpy.dtype([('id', int), ('name', 'S3'), \ ('score', float)]) True >>> numpy.all(sa['id'] == sb['id']) True >>> numpy.all(sa['name'] == sb['name']) True """ if a.dtype.fields is None: raise ValueError, "`A' must be a structured numpy array" b = numpy.empty(a.shape, dtype=a.dtype.descr + descr) for name in a.dtype.names: b[name] = a[name] return b 
  • Finde numpy.int_ im Array von int_s mit numba
  • Numpy: Scheinbarer Speicherfehler
  • Wie spalte die Spalte von Tupeln in Pandas Dataframe?
  • Python / Numpy: Konvertierte Liste von bools zu unsigned int
  • Karte numpys `in1d` über 2D-Array
  • Numpy Fancy Indizierung in mehreren Dimensionen
  • Scipy Fehler: numpy.dtype Größe geändert, kann auf binäre Inkompatibilität (und damit verbundenen seltsamen Verhalten)
  • Die Dimension der Bildpalette mit matplotlib und / oder numpy, um ein blockiges Bild zu erzeugen
  • Fehler beim Laden von .csv in Tensorflow
  • Numpy Matrix Multiplikationsfehler
  • Warum funktioniert eine Aufgabe für doppelt geschnittene numpy Arrays nicht?
  • Python ist die beste Programmiersprache der Welt.