average of first element of every cell

3 Ansichten (letzte 30 Tage)
Diego Hens
Diego Hens am 1 Dez. 2020
Kommentiert: Ameer Hamza am 1 Dez. 2020
Hello,
I have gotten such a headache trying to solve this one. It shouldn't be that difficult.
I have a table. Every cell has a vector coordinates like this [a b c] (a, b and c are some numbers).
I would like to do the mean of the first, second and third element of the every column. That is, if I have 9 columns I should get 9 vectors with the mean of every column.
I tried like this:
Average_Vector{j,i} = [mean(Vector_per_Point{j,i}(1)),mean(Vector_per_Point{j,i}(2)),mean(Vector_per_Point{j,i}(3))];
Vector_per_Point is the table containing a vector in each cell.
I know this line of code is wrong, as it only makes the mean of a cell. That means that I get the same table as in Vector_per_Point (since the average of only one number is the same number in itself).
The written line of code is in a for loop j=... and this loop is in another for loop i =...
Thank you.

Akzeptierte Antwort

Ameer Hamza
Ameer Hamza am 1 Dez. 2020
Bearbeitet: Ameer Hamza am 1 Dez. 2020
The exact solution depends on how your data is structured. I guess the following will work
Average_Vector = mat2cell(mean(cell2mat(Vector_per_Point)), 1, 3*ones(size(Vector_per_Point,2),1))
If it does not work, please attach your variable in a .mat file.
  2 Kommentare
Diego Hens
Diego Hens am 1 Dez. 2020
Thank you for the quick and correct solution :)
Ameer Hamza
Ameer Hamza am 1 Dez. 2020
I am glad to be of help! :)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by