/ / Python - Subtrahieren der Elemente von zwei Arrays [Duplizieren] - Python, Arrays, Mathe, Subtraktion

Python - Subtrahieren der Elemente von zwei Arrays [Duplizieren] - Python, Arrays, Mathe, Subtraktion

Ich bin neu in Python Programmierung und stolperteüber diese Funktion des Subtrahierens in Python, die ich nicht herausfinden kann. Ich habe zwei 0/1 Arrays, beide der Größe 400. Ich möchte jedes Element von Array eins von seinem entsprechenden Element in Array 2 subtrahieren.

Angenommen, Sie haben zwei Arrays A = [0, 1, 1, 0, 0] und B = [1, 1, 1, 0, 1].
Dann würde ich erwarten A - B = [0 - 1, 1 - 1, 1 - 1, 0 - 0, 0 - 1] = [-1, 0, 0, 0, -1] Aber in Python bekomme ich [255, 0, 0, 0, 255].

Woher kommt diese 255 und wie bekomme ich stattdessen -1?

Hier einige zusätzliche Informationen: Die realen Variablen, mit denen ich arbeite, sind Y- und LR-Vorhersagen.

Y = Array ([[0, 0, 0, ..., 1, 1, 1]], dtype = uint8)

LR_Predictions = Array ([0, 1, 1, ..., 0, 1, 0], dtype = uint8)

Wenn ich entweder Y_LR_predictions oder numpy_subtract (Y, LR_predictions) verwende,

Ich bekomme: Array ([[0, 255, 255, ..., 1, 0, 1]], dtype = uint8)

Vielen Dank

Antworten:

0 für die Antwort № 1

Ich kann das nicht replizieren, aber es sieht so aus, als ob die Zahlen 8 Bit sind und etwas wie umwickeln


0 für die Antwort № 2
A = [0, 1, 1, 0, 0]
B = [1, 1, 1, 0, 1]
newlist = [e-B[c] for c,e in enumerate(A)]

Versuchen Sie ein Listenverständnis. Sie können 255 mit normalen Listen nicht bekommen. Sie sollten bekommen haben TypeError: unsupported operand type(s) for -: "list" and "list"