Remove number from a matrix within a for loop

2 ビュー (過去 30 日間)
Elijah L
Elijah L 2020 年 9 月 18 日
回答済み: Gaurav Garg 2020 年 9 月 21 日
This script outputs an 1x3 matrix (timeszmn2). I want to make it so that this script removes the 3rd number in this matrix within the 'for' loop. How can I do this?
I would assume that I need to make it so that zmndynarray2 doesn't have this third value?
zmn2 = zpoint';
d =[diff(zmn2) 0];
zmndynarray2 = [];
for i=1:(length(d)-1)
if d(i)*d(i+1)< 0 && d(i+1) > 0
zmndynarray2 = [zmndynarray2 (i+1)];
end
end
zmn2 = zpoint(zmndynarray2)
timeszmn2 = times(zmndynarray2)
  4 件のコメント
Walter Roberson
Walter Roberson 2020 年 9 月 19 日
Have you considered findpeaks of the negative of the data ?
Elijah L
Elijah L 2020 年 9 月 19 日
Yes, I know I could easily use findpeaks or islocalmin but I would like to use a for loop as my algorithim

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

回答 (1 件)

Gaurav Garg
Gaurav Garg 2020 年 9 月 21 日
Hey Elijah,
You can replace the third element by [ ] in the script.
Example -
a = [1 2 3];
a(3)
a(3) = [ ]
What you would get is -
ans =
1 2

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by