Find equal elements in an array and average the corresponding values
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Hello, I have a cell array A{2, 6} like the following
[-0.27,11.53,-2.82] [0.01,11.72,-3.27] [-0.04,11.56,-2.87] [-0.01,11.73,-2.62] [-0.01,11.73,-2.62] [0.10,11.58,-3.22]
128151x3 double 55009x3 double 84858x3 double 92417x3 double 40318x3 double 65249x3 double
and I would like to average the values of A{2, x} if 2 or more cells in A {1, x} are equal. Based on the example above I would like to have a cell array A{2, 5} like the following:
[-0.27,11.53,-2.82] [0.01,11.72,-3.27] [-0.04,11.56,-2.87] [-0.01,11.73,-2.62] [0.10,11.58,-3.22]
128151x3 double 55009x3 double 84858x3 double mean (92417x3 double,40318x3 double) 65249x3 double
How can I do it. Thank you very much!
2 Kommentare
KSSV
am 12 Okt. 2020
You have three columns in each cell. Are the three columns independent or they are (x,y,z)?
Antworten (1)
KSSV
am 12 Okt. 2020
Bearbeitet: KSSV
am 12 Okt. 2020
Let A and B be your matrices of size 92417x3, 40318x3 respectively. First you need to get them to the same dimension to find the mean. For this, you have to do interpolation.
B_new = A ;
B_new(:,3) = scatteredinterpolant(B(:,1),B(:,2),B(:,3),A(:,1),A(:,2)) ;
themean = B ;
themean(:,3) = (A(:,3)+B(:,3))/2 ;
3 Kommentare
KSSV
am 12 Okt. 2020
That can be done with ease...you want to find mean..if the first and last point matches??
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!