MATLAB: Extracting valid elements from a vector to another

vectorvectors

Hi! I've been struggling with this problem for a while now, and now I've gotten kinda blind for a solution. I have a vector A of length n and a vector B of length i, where n > i. Vector A contains measured samples and vector B contain elements that indicate which samples in vector A that is valid in an incrementing order. Maybe an example would illustrate this better:
A(1:n) = [5 6 3 4 5 …] and B(1:i) = [2 3 5 10 …] I want to extract valid values of A into a third vector of length i, say vector C(1:i), based on element values of B. In above case C = [6 3 5 ….]
Any help would be appreciated, particularly some coding hint/tips!

Best Answer

It's simply:
C = A(B);
Related Question