Ich habe ein Nummernfeld:
%Vor%Ich möchte ein neues Array, das daraus erstellt wurde, wobei die Elemente, die nicht Null sind, in Nullen umgewandelt werden und die Nullelemente in eine einzige Zahl umgewandelt werden, die der Anzahl der aufeinander folgenden Nullen entspricht:
%Vor%Suchen Sie nach einem vektorisierten Weg, dies zu tun, da das Array & gt; 1 Million Elemente. Jede Hilfe sehr geschätzt.
Dies sollte den Trick machen, es funktioniert ungefähr, indem 1) alle aufeinander folgenden Nullen gefunden und gezählt werden, 2) die Größe des Ausgangsarrays berechnet und mit Nullen initialisiert wird, 3) die Zählungen von Teil 1 in die richtige Reihenfolge gebracht werden Orte.
%Vor%Tags und Links numpy