how does a diff operation works for relational and logical cases with arrays ?
1 回表示 (過去 30 日間)
古いコメントを表示
i was trying to work with diff operator after trying out sum[1 2 4 6]
diff([14 5 6 14 32])
ans=
-9 1 8 18
above statement is understandable.
diff([14 5 6 14 32]==14)
ans=
-1 0 1 -1
this i can't understand !
how is this working???
0 件のコメント
回答 (2 件)
Star Strider
2019 年 6 月 7 日
The argument creates a logical array:
Lv = [14 5 6 14 32]==14
Lv =
1×5 logical array
1 0 0 1 0
and logical arrayss become numeric when you do calculations with them:
D = diff(Lv)
D =
-1 0 1 -1
Similarly:
v = [14 5 6 14 32];
LogicalIndexing = v(Lv)
Multiplication = v .* Lv
LogicalIndexing =
14 14
Multiplication =
14 0 0 14 0
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Debugging and Analysis についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!