Hi, I'm dealing with a column vector with elements growing from top to bottom: I would like each element following the first to be subtracted from its previous one. Thanks for your suggestions

 採用された回答

Voss
Voss 2022 年 12 月 17 日

0 投票

% a column vector:
x = [1;4;5;7;10]
x = 5×1
1 4 5 7 10
% one way:
diff(x)
ans = 4×1
3 1 2 3
% another way:
x(2:end)-x(1:end-1)
ans = 4×1
3 1 2 3

2 件のコメント

Federico Paolucci
Federico Paolucci 2022 年 12 月 17 日
Thank you very much, i have another question: is there a way to maintain "1" as the first element of the new vector? in this case, I would obtain [1;3;1;2;3] from x = [1;4;5;7;10]
Voss
Voss 2022 年 12 月 17 日
You're welcome!
x = [1;4;5;7;10];
new_x = [x(1); diff(x)]
new_x = 5×1
1 3 1 2 3

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeProgramming についてさらに検索

製品

リリース

R2022b

質問済み:

2022 年 12 月 17 日

コメント済み:

2022 年 12 月 17 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by