Subtraction matrixes with different dimensions
Afficher commentaires plus anciens
I have 2 massives C<32768x3> Al<20000x3> in which columns are (x,y,z). I need to find out all distances between C and Al. I try:
sqrt(((Al(:,1)-C(:,1))^2)+((Al(:,2)-C(:,2))^2)+((Al(:,3)-C(:,3))^2))
But I got error:
??? Error using ==> minus
Matrix dimensions must agree.
Réponse acceptée
Plus de réponses (3)
Image Analyst
le 6 Avr 2017
distances = pdist2(C, Al);
pdist2 is in the Statistics and Machine Learning Toolbox. It gives the distance of every point in C to every point in Al.
Jan
le 6 Avr 2017
Without the Statistics Toolbox and Matlab >= 2016b:
D = sqrt(((Al(:,1) - C(:,1).') .^ 2) + ...
((Al(:,2) - C(:,2).') .^ 2) + ...
((Al(:,3) - C(:,3).') .^ 2));
Miroslav Zaharov
le 6 Avr 2017
0 votes
Catégories
En savoir plus sur Design of Experiments (DOE) dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!