Selectinh elements from an array

Suppose that I have a 20*20 array by the name of "S", which is distances between 20 stores. I have another variable, P, which is the produce those stores would have. User can choose which produce he wants to distribute and bey selecting every produce the number of available stores would be different. For example if I choose the Dairy, the only stores which are available are S=[4, 6, 9, 13, 17] and the other stores would be for Meat. How can I devide my S array into two different 15*15 and 5*5 arrays?
Thanks.

Antworten (1)

Ameer Hamza
Ameer Hamza am 1 Nov. 2020

0 Stimmen

Check this code
S = rand(20);
selected_stores = [4, 6, 9, 13, 17];
idx1 = selected_stores;
idx2 = setdiff(1:size(S,1), selected_stores);
M1 = S(idx1, idx1); % 5x5
M2 = S(idx2, idx2); % 15x15

Diese Frage ist geschlossen.

Gefragt:

am 1 Nov. 2020

Geschlossen:

am 20 Aug. 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by