Want to apply two different functions on different elements of a vector.
2 views (last 30 days)
Show older comments
Vinay Killamsetty
on 9 May 2019
Commented: Vinay Killamsetty
on 9 May 2019
How can we operate two seperate functions on elements of a row vector: one function should be operated on even position elements and other function should be operated on odd position elements by using array function or by any other means.
Finally the outcomes of those operations should be combined as a another row vector
2 Comments
Erivelton Gualter
on 9 May 2019
Hi dear,
Could you clarify this problem better? WOuld be help full to share some code as well.
Accepted Answer
Alex Mcaulley
on 9 May 2019
Edited: Alex Mcaulley
on 9 May 2019
a = 1;
b = 5;
odd = @(w) a*w+b*w^2;
even = @(w) a*w^2+b*w;
curr_w = rand(1,5);
aa = arrayfun(odd,curr_w(1:2:numel(curr_w)));
bb = arrayfun(even,curr_w(2:2:numel(curr_w)));
res(1:2:numel(curr_w)) = aa;
res(2:2:numel(curr_w)) = bb;
More Answers (0)
See Also
Categories
Find more on Cell Arrays 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!