Zwang in einem Numpy Array zu zwingen, innerhalb eines bestimmten Bereichs zu sein

Ich habe ein numpy Array und ich möchte jedes Element zwingen, das weniger als null ist, um Null zu sein, und jedes Element über 255 wird auf 255 gezwungen.

z.B. X = (-1,7,255,299) => (0,7,255,255)

Gibt es einen nicht zu komplizierten Einzeiler, der das erreichen kann?

One Solution collect form web for “Zwang in einem Numpy Array zu zwingen, innerhalb eines bestimmten Bereichs zu sein”

Die Antwort ist numpy.clip

numpy.clip(x, 0, 255) 

In Bezug auf die Frage in Ihrem Titel gepostet: nicht. Sie können die Lambda-Funktion auf jedes Element anwenden, mit vektorisieren, aber das ist selten die beste Wahl.

  • Python Numpy Structured Array (Rearray), die Werte in Slices zuweisen
  • Matplotlib Kontur Eingabe Array Reihenfolge
  • Python / Scipy 2D Interpolation (ungleichförmige Daten)
  • Berechnen Sie das Maximum mit einer vektorisierten Lösung in Python
  • Mk_set_num_threads mit numpy verwenden
  • Scipy: savefig ohne Frames, Achsen, nur Inhalt
  • Python Chunking CSV File Multiproccessing
  • Wie importiere ich aus einer unicode (utf-8) csv datei in ein numpy array
  • Plotten einer 2D-Wärmekarte mit Matplotlib
  • Merkwürdig ... Was bedeutet [? 5,0] bedeuten
  • RuntimeWarning: dividiere durch null im log
  • Python ist die beste Programmiersprache der Welt.