.Selecting the data series for next loop
3 views (last 30 days)
Show older comments
Hello Everyone,
I have 1 main series lets say it as y and 5 sub series lets say it as x1.
Now I am calculating z1 using the equation z1= y-x1.
and then I am calculating the coefficient of determination that is R^2. Now what I want is that as from 5 x1 I will get 5 z1 series which will give me 5 R^2, so now I want that code should select the x1 series which gives maximum value of R^2 and assign it as x1 series for further computation.
After this, of the remaining 4 x1 series, which will be taken as x2 series, i again want to calculate z2 using the equation z2=y-x1-x2. Here x1 and y are fixed where as x2 is changing. I have done this in excel but I have lot of series. I just want to know how to direct the code to select the series of maximum R^2.
Thanks in advance
0 Comments
Accepted Answer
Bob Thompson
on 6 Aug 2019
Is y a single value?
I'm not entirely sure I know what you're asking for, but maybe something like this can work?
y = randi(100,1,1);
x = randi(50,5,1);
c = 1;
xc = [];
while length(x)>1
z = y-sum(xc)-x; % Calculate z values for all x
xc(c) = x(z==max(z)); % Record x which results in max z ( I know you want max R^2 but you didn't give a relationship for z and R^2)
x = x(x~=xc(c)); % Remove recorded x value from x
c = c + 1;
end
xc(c) = x; % Record last value of x
More Answers (0)
See Also
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!