How to calculate the average of a cell array?

60 Ansichten (letzte 30 Tage)
Ashfaq Ahmed
Ashfaq Ahmed am 7 Aug. 2023
Beantwortet: Les Beckham am 7 Aug. 2023
Hi, I have a cell array like this -
T = {[10, 1, 30], [15, 2, 10], [20, 3, 20]}
T = 1×3 cell array
{[10 1 30]} {[15 2 10]} {[20 3 20]}
I want to calculate the mean of T in a way that the result is a 1x3 double. And the result is,
T = [15, 2, 20]
It means the result should average the values of its position. (10+15+20)/3 = 15
Thank you!!

Akzeptierte Antwort

Voss
Voss am 7 Aug. 2023
T = {[10, 1, 30], [15, 2, 10], [20, 3, 20]}
T = 1×3 cell array
{[10 1 30]} {[15 2 10]} {[20 3 20]}
M = vertcat(T{:})
M = 3×3
10 1 30 15 2 10 20 3 20
meanT = mean(M,1)
meanT = 1×3
15 2 20

Weitere Antworten (1)

Les Beckham
Les Beckham am 7 Aug. 2023
T = {[10, 1, 30], [15, 2, 10], [20, 3, 20]}
T = 1×3 cell array
{[10 1 30]} {[15 2 10]} {[20 3 20]}
A = vertcat(T{:}) % make an array from the elements of the cell array by stacking them
A = 3×3
10 1 30 15 2 10 20 3 20
m = mean(A) % average the columns
m = 1×3
15 2 20

Kategorien

Mehr zu Matrices and Arrays 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!

Translated by