Inkrementieren eines Wertes eines MATLAB-array mehrmals in einer Zeile

Dies ist eine Frage, über die Inkrementierung eines Wertes von einem MATLAB-array mehrmals in der gleichen Anweisung, ohne eine for-Schleife verwenden.

Ich mein array als:

>> A = [10 20 30];

Und führen Sie dann:

>> A([1, 1]) = A([1, 1]) + [20 3]

A =

    13    20    30

Deutlich die 20 ist, wird ignoriert. Aber ich möchte, dass es aufgenommen werden, so dass:

>> A = [10 20 30];
>> A([1, 1]) = A([1, 1]) + [20, 3]

geben würde:

A =

    33    20    30

Gibt es eine Funktion, damit dies getan werden in einem schönen, vektorisierte Mode?

(In der Realität, die Indizierung des Arrays enthalten mehrere Indizes, so könnte es sein [1 1 2 2 1 1 1 1 3 3 3] etc., mit einer Reihe von zahlen zu erhöhen um (die [20, 3] oben) der gleichen Länge).

InformationsquelleAutor Bill Cheatham | 2010-10-17

Schreibe einen Kommentar