using relational operators on array and element

조회 수: 12 (최근 30일)
David Weise
David Weise 2019년 10월 7일
편집: Stephen23 2019년 10월 9일
Hy,
I'm trying to figure out a way to sort my experiment data. I have a list with values which I want to look at but first I need to delte the ones that don't fit my criteria. For this case I developed the following code:
%tolerance
x=1
%values
T1=5:-5:-15;
%values2
T2=30:5:55;
%values3
f=30:5:120;
%dimension
d=size(meassure);
d=d(1);
%applying tolerance to values I want to extract
var1=T1-x;
var2=T1+x;
%loop to check for criteria
for i=1:d
if T(i,6)>=var1 & T(i,6)<=var2;
else T(i,6)=NaN;
My problem now is, because var1 and var2 are arrays it puts NaN to every value. Even though one of the values fits the if.... criteria.
I hope someone can help me and I explained my problem well enough
  댓글 수: 3
David Weise
David Weise 2019년 10월 9일
I know the basics of C and just learned some stuff about Matlab but not Python.
Stephen23
Stephen23 2019년 10월 9일
편집: Stephen23 2019년 10월 9일
MATLAB is not very much like C.
The best way to learn basic MATLAB concepts is by working through the introdutory tutorials:

댓글을 달려면 로그인하십시오.

채택된 답변

Daniel M
Daniel M 2019년 10월 7일
if y>=var1 & y<=var2;
var1 = 4 -1 -6 -11 -16
var2 = 6 1 -4 -9 -14
Let's say y = 5, so the condition above will evaluate to
ans =
1×5 logical array
1 0 0 0 0
How do you want the if statement to handle a logical array?
Perhaps you want to look into one of the following functions
all()
any()
  댓글 수: 2
David Weise
David Weise 2019년 10월 9일
Thanks for your answer. I tried this now but not getting the right answers.
for i=1:d
y=T(i,6)
if y>=var1 & y<=var2
if any(y==1)
else T(i,6)=NaN
end
end
end
The code is running but doesn't change anything
Daniel M
Daniel M 2019년 10월 9일
I'm not sure you understand how if statements work. You should read up on that.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Get Started with MATLAB에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by