Find the indices of the imaginary element of the matrix
27 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hassan Alkomy
le 8 Juin 2021
Réponse apportée : Hassan Alkomy
le 8 Juin 2021
Suppose I have a Matrix like this:
A=[1 2 3;
4+i 5 6-i;
7 8+i 9]
Now, I want to know if there is a way to find the indecies of the imaginary elements (by this I mean the complex numbers which have imaginary part). I am looking for an answer like that:
A(2,1)
A(2,3)
A(3,2)
or any other form the conveys the indecies information of the imaginary elements.
Thank you so much.
0 commentaires
Réponse acceptée
Plus de réponses (3)
Joseph Cheng
le 8 Juin 2021
you can do a comparison to the real(A) like
A=[1 2 3;
4+i 5 6-i;
7 8+i 9]
[row col]=find(A~=real(A))
then with find you can get the row and column index values of the as real(A)~=A
Scott MacKenzie
le 8 Juin 2021
% test matrix
A=[1 2 3;
4+i 5 6-i;
7 8+i 9]
% identify imaginary elements in A (+1 or -1)
B = imag(A)
% generate column vector of indices of imaginary elements in A
find(B~=0)
Output:
A =
1 + 0i 2 + 0i 3 + 0i
4 + 1i 5 + 0i 6 - 1i
7 + 0i 8 + 1i 9 + 0i
B =
0 0 0
1 0 -1
0 1 0
ans =
2
6
8
Voir également
Catégories
En savoir plus sur Logical 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!