Effacer les filtres
Effacer les filtres

How to sum of the values of z corresponding to the ranges of x and y?

3 vues (au cours des 30 derniers jours)
SOM
SOM le 20 Mar 2023
Commenté : Rik le 22 Mar 2023
Hello,
I have a 3D matrix (x, y ,z) such as:
[1 -5 -2; 0 2 3; 2 -5 -2; -0.5 2 5; -0.8 3 3.5]
Can we find the sum of the values of z corresponding to the ranges of x and y in x, y and z?
For simple example, the sum of z values corresponding to -1<x<1 and 1<y<5.
Any suggestions?
Thank you!

Réponses (1)

Rik
Rik le 20 Mar 2023
If your ranges grow more complex, you should try to define groups so you can use splitapply. But for this simple example you can simple use logical indexing on your 2D (not 3D) data.
data = [1 -5 -2; 0 2 3; 2 -5 -2; -0.5 2 5; -0.8 3 3.5];
x = data(:,1);
y = data(:,2);
z = data(:,3);
value = sum(z( x>=-1 & x<1 & y>=1 & y<5 ));
disp(value)
11.5000
  2 commentaires
SOM
SOM le 22 Mar 2023
Déplacé(e) : Rik le 22 Mar 2023
Thank you !! It was a great help
Rik
Rik le 22 Mar 2023
You're welcome. If I solved your question, please conder marking it as accepted answer.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by