MATLAB Answers

0

Split array based on given indices

Asked by Mariella Dreißig on 15 Aug 2019
Latest activity Edited by Mariella Dreißig on 15 Aug 2019
I want to split one array into two based on given indices. Specifically, have two arrays, one array A with data (3 columns) and one B with indices.
eg A = [10 11 12 13 14 15 16 17 18 19 20], B = [3 4 5 8 9 10]
As a result, I want two new arrays C and D where C includes all values in A on given indices in B and D including the rest.
eg C = [12 13 14 17 18 19], D = [10 11 15 16 20]
For now, I'm having a loop (check for i in B with ismember and append value in A to array C/D accordingly) but since I have a lot of data, it takes quite long. Any help is appreciated, I know that there is a arrayfunction for everything in matlab.

  0 Comments

Sign in to comment.

Products


Release

R2019a

1 Answer

Answer by madhan ravi
on 15 Aug 2019
 Accepted Answer

C=A(B)
D=setdiff(A,C)

  1 Comment

Sign in to comment.