Use of accumarray function

5 vues (au cours des 30 derniers jours)
Stephane Tess
Stephane Tess le 24 Sep 2019
Commenté : Matt J le 30 Sep 2019
Hi everybody;
Please find here below my question :
I have 3D available data : Xaxis : AZ, Yaxis : EL, Zaxis : Gain, whose Xaxis & Yaxis data are non regular
1. I need to define some 2D cells in order to slice all the AZ,EL data into regular cells (For instance, size of a cell is +/-0.1° in AZ & EL)
There are a lot of the cell that will be empty as only few cuts measurement are available.
2. As several acquisitions are made, we can get different value of Gain within a same cell region.
I need to average the Gain within each cell when there are different value.
But, I would like to avoid to read all the data one by one, and to fill the cell one by one to average them
I’ve seen the function "accumarray" that seems to solve this kind of question, but i can not really figure out how to use it ...
Could a good soul help me ?. Thanks a lot for your advise
  2 commentaires
Guillaume
Guillaume le 24 Sep 2019
An example of the input data would really be useful.
Matt J
Matt J le 24 Sep 2019
Stephane's comment moved here:
yes, please find a simple exemple of the data (i join also the file exemple.csv), that provide about 100 points with just one cut along AZ and one cut in EL.
Hope this help.

Connectez-vous pour commenter.

Réponses (1)

Matt J
Matt J le 24 Sep 2019
Modifié(e) : Matt J le 24 Sep 2019
For example,
AZ=AZ(:); EL=EL(:); Gain=Gain(:);
AZedges=min(AZ)-0.1:0.2:max(AZ)+0.1; ELedges=min(EL)-0.1:0.2:max(EL)+0.1;
subs=[discretize(AZ,AZedges), discretize(EL,ELedges)];
cellMeans=accumarray(subs,Gain,[],@mean);
  4 commentaires
Matt J
Matt J le 30 Sep 2019
Stephane Tess' comment move here:
Thanks you very much Matt !
Matt J
Matt J le 30 Sep 2019
You're welcome, but please Accept-click the answer if it lead to a solutionfor you.

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