Effacer les filtres
Effacer les filtres

Compare big matrices A ,B

1 vue (au cours des 30 derniers jours)
Kamal
Kamal le 23 Nov 2013
Modifié(e) : Image Analyst le 23 Nov 2013
I Have 2 big matrix A, B with the same dimension (mxn) that n>>m. I apply the princomp function on those for computing the principal components because I wanted to reduce those dimension for comparing those with each other. I want to find that which row of those matrices has biggest difference with each other. Is it possible by comparing the angles between the eigenvectors that I computed by the princomp function (principal components of the 2 matrix)?? It really appreciated if you get me some proposal and help. Thank you for your time and help. Kamal
  3 commentaires
Image Analyst
Image Analyst le 23 Nov 2013
I agree with Jan - I'm confused too. After you do PCA on A and on B, you'll have two more sets of axes (one for each PC set on A and B) Are you comparing rows of A to rows of A? And same for B? Or are you comparing rows of A to rows of B? Or the angle between PC1 of A with PC2 of A? Or PC1 of A with PC1 of B? Please clarify.
Kamal
Kamal le 23 Nov 2013
Modifié(e) : Kamal le 23 Nov 2013
Many thanks for your comments. as I mentioned before, my final goals is comparing the row of A to rows of B. but I want to use the PCA for this goal. How I can? Please note that the each row of both matrices involved the continuous information and there are very noisy. For example the status of first row of A is same as first row of B. Also the status of the second row is same as the second on and so on.... So, I decided to used from the angle of the principal components method for comparing that works for all Matrices.I need to indicate that for example the k-th row is the row with the biggest variation(along the all columns). Is it OK or not? thanks again for your help.

Connectez-vous pour commenter.

Réponses (1)

Image Analyst
Image Analyst le 23 Nov 2013
Modifié(e) : Image Analyst le 23 Nov 2013
Try this
comparison = abs(A-B);
[maxValue, indexOfMax] = max(comparison);
% Get row and column from linear index.
[row, col] = ind2sub(size(A), indexOfMax);
How does that work for you?

Community Treasure Hunt

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

Start Hunting!

Translated by