Subtracting one element of an array from all elements of another array

8 vues (au cours des 30 derniers jours)
Hamid
Hamid le 29 Juil 2022
Commenté : Hamid le 1 Août 2022
Dear all,
I have two (40*40) arrays and want to subtract every element of one array from all elements of the other one. Is there any function to avoild using loops? How can I use loops for that? Thank you in advance.
hit1=load ('hit1.mat');
hit2=load ('hit2.mat');

Réponse acceptée

Walter Roberson
Walter Roberson le 29 Juil 2022
Modifié(e) : Walter Roberson le 29 Juil 2022
result4d = hit1 - permute(hit2, [3 4 1 2]);
This will be 40 x 40 x 40 x 40.
Depending on what you are doing, you might also want to consider something like
result2d = pdist2(hit1(:), hit2(:))
and then reshape() if desired. Note that pdist2 would not be negative.

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Produits


Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by