vector indexing in different dimension

2 views (last 30 days)
Hello everyone,
i am looking for a way to do the following without a for loop.
Suppose i have an array C of 100 elements and i have some events in the array (3 events) that i want to perform operation on.
A = [1; 20; 35;] this is the start index of those events
B = [5; 22; 55;] this is the end index of those events
how can i in one command for example do the following?
max(C(A:B)) where it should look for the max element of the event using index of A(1):B(1), A(2):B(2) and A(3):B(3)
thank u

Accepted Answer

Stephane Dauvillier
Stephane Dauvillier on 29 Apr 2019
You can use arrayfun function:
arrayfun(@(a,b) max(C(a:b)),A,B)

More Answers (0)


Find more on Matrices and 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!

Translated by