How to add values from if statements to a column

7 次查看(过去 30 天)
say I have
function [x,y]=valuesof(data)
input= data;
t=length(data);
for z=2:t
if input(z-1)>input(z) && input (z)<input(z+1);
x= 'the values of the indices' i.e z
y= 'the input values of the sequence that satisfies the condition' input(z)
end
end
end
how would I create a new colum for each value that satifies my if statement. The 1st column for the indice that the if statement is valid and the 2nd column for the value of input(z)
so for example if I have data of a column as
1
-3
1
0
-1
3
it would store the values of x
as
2
5
and y as
-3
-1
I would not like to use any built in matlab functions such as diff, sign and find etc. Thanks for the help

采纳的回答

Turlough Hughes
Turlough Hughes 2019-10-9
编辑:Turlough Hughes 2019-10-9
You just have to make an index for every time your if statement is satisfied. See the modified code.
function [x,y]=valuesof(data)
c=1; % new index
input= data;
t=length(data);
for z=2:t
if input(z-1)>input(z) && input(z)<input(z+1);
x(c,1)=z;
y(c,1)=input(z);
c=c+1;
end
end
end

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by