2016-05-25 4 views
-1

Ich versuche, den ersten Wert in einem Vektor mit dem vierten Wert im selben Vektor (4. mit dem 8. Wert usw.) zu subtrahieren, aber ich kann es nicht zum Funktionieren bringen. Ich möchte, dass es am Ende ein Vektor mit 57 Werten ist.Wie berechne ich die Änderung zwischen den Werten im Vektor? (Matlab)

ich versuche, eine for-Schleife zu verwenden, aber es scheint total falsch zu sein.

irgendwelche Vorschläge, wie es im allgemeinen

+2

Subtrahieren "_with_"? '1',' 4', '8' machen nicht wirklich eine logische Sequenz, oder? Haben Sie versucht, etwas wie 'x (4: 3: Ende) - x (1: 3: Ende-3)'? –

Antwort

0

solv, sollte die Verwendung von for-Schleifen in Matlab, wann immer möglich vermieden werden. In diesem Fall ist es ziemlich einfach zu erreichen, was Sie versuchen zu tun (wenn ich die Frage richtig verstanden habe). Wenn Sie als Ausgabe einen Vektor möchten, dass die Differenz von zwei Komponenten des ursprünglichen Vektors in jeder Komponente hat, ist dies ein Weg, es zu tun:

b = a(indices_1) - a(indices_2);

, wo eine der Original-Vektor und indices_1 und indices_2 ist sind Vektoren, die die Indizes enthalten, die Sie aus a extrahieren möchten. In Ihrem Fall verstehe ich nicht ganz, was diese Indizes sein können. Wahrscheinlich müssen Sie etwas wie indices_1 = 1:3:length(a) und indices_2 = 4:3:length(a) tun, aber Sie sollten genauer sein.

Als einen Hinweis für die nächste Frage, die Sie veröffentlichen werden, geben Sie bitte einen Beispielcode ein. Es ist selbsterklärend und beweist auch, dass Sie zumindest versucht haben, das Problem anzugehen.

Verwandte Themen