# How to save indices of a certain region of a matrix

29 vues (au cours des 30 derniers jours)
Ahmad Hasnain le 3 Mar 2020
Commenté : Ahmad Hasnain le 3 Mar 2020
I have a matrix, let's say A
A = [1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16];
I have another matrix, let's say B
B = A(3:end,3:end);
This is how I can simple save B. But instead of saving the values of B. I want to save the indices of B that were in A.
Indices of B in A are 11,12,15 and 16.
How can I do it by using some matlab command?
##### 0 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

### Réponse acceptée

M le 3 Mar 2020
I am not sure if I understood your question but here is a second simple example:
A = [10 11 12;13 14 15; 16 17 18];
B = [14 15; 17 18];
You can see that B is member of A:
idx = ismember(A,B)
idx =
3×3 logical array
0 0 0
0 1 1
0 1 1
And you can get the indices of B in A:
find(idx)
ans =
5
6
8
9
##### 0 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

### Plus de réponses (1)

Bhaskar R le 3 Mar 2020
ind = find(ismember(A(:), B(:)))
##### 1 commentaireAfficher -1 commentaires plus anciensMasquer -1 commentaires plus anciens
Ahmad Hasnain le 3 Mar 2020
Thanks, both the answers solved my problem.

Connectez-vous pour commenter.

### Catégories

En savoir plus sur Multidimensional Arrays dans Help Center et File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by