how to use if-else for select transition matrix input

2 views (last 30 days)
d = 1,2,5,10 will use tm = p_clear but d = 3,4,7 will use tm = p_partly and d = 6,8,9 will use tm = p_cloudy. what command that i should use? The below is code that i wrote but it has problem about transition matrix that used not match with day. pleas help me.
if d == 1 || d == 2 || d == 3 | d == 4 || d == 5 || d == 7 || d == 17;
p = cdf_partly;
elseif d == 6 || d == 8 || d == 9 || d == 10;
p = cdf_mostly;
end

Accepted Answer

Julia
Julia on 3 Feb 2015
Hi,
I do not completely understand your problem, but you can write your conditions with a switch-case statement:
function p = test2(y)
switch y
case {1, 2, 5, 10};
p=0;
case {3, 4, 7};
p=1;
case {6, 8, 9};
p=2;
otherwise
p=-1;
end
end
  6 Comments
Anuchit Wibun
Anuchit Wibun on 4 Feb 2015
I have file in worksheet its name "day". In this file is array of number [1; 1; 1; 2; 2; 2; 3; 3; 3; 4; 4; 4....,10]. From my code, i define "d" is value that read from day file in each row. That mean d=1,d=1,d=1,d=2,d=2,d=2...] and i create loop if d==1, i will determine p = cdf_clear(cdf_clear is matrix 10*10) but d==2, i will determine p=cdf_parlty(it not same cdf_clear). The result that i want is
output file : @ day 1 >> 0.34 [value that was got from *cdf_clear* (i,j)]
1 >> 0.85 [value that was got from *cdf_clear* (i,j)]
......
2 >> 0.23 [value that was got from *cdf_partly* (i,j)]
.....
3 >> 0.26 [value that was got from *cdf_mostสั* (i,j)]
Are you understand with i explain?. I used if-else
if d==1 || d==3 || d==7;
p = cdf_clear;
elseif d==4 || d== 5;
p = cdf_partly;
end.
It not work. I'm beginner, i try to watch technique from internet but i don't know keyword for thing that i want. Thank you every much.
Michael Haderlein
Michael Haderlein on 4 Feb 2015
Ok, but what is the problem with Julia's answer? If you replace p=0 with p=cdf_clear and so on, it should work.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!