Ich habe ein unteres dreieckiges Array, wie B:
%Vor%Ich möchte es so aussehen lassen:
%Vor% Das heißt, ich möchte alle positiven Werte nehmen und innerhalb der positiven Werte umkehren, wobei die abschließenden Nullen an Ort und Stelle bleiben. Das macht fliplr
nicht:
Irgendwelche Tipps? Außerdem würde das tatsächliche Array, mit dem ich arbeite, etwas wie B.shape = (200,20,4,4)
anstelle von (4,4)
sein. Jeder (4,4)
Block sieht wie das obige Beispiel aus (mit unterschiedlichen Zahlen über die 200, 20 verschiedenen Einträge).
Hier ist ein Ansatz für einen 2D
-Array-Fall -
Sie können es auf einen 3D
-Array-Fall mit der gleichen 2D
-Maske erweitern, indem Sie masking
die letzten beiden Achsen damit, so -
.. und ähnlich für einen 4D
array case, wie so -
Wie man sieht, halten wir den Maskierungsprozess auf den letzten beiden Achsen von (4,4)
und die Lösung bleibt im Grunde gleich.
Beispiellauf -
%Vor%