how can I get the mean of each two columns of a matrix ?

18 Ansichten (letzte 30 Tage)
Niki
Niki am 8 Jul. 2016
Kommentiert: Star Strider am 8 Jul. 2016
I have a big matrix and I want to get the average of each 2 columns,
Is there any function to do that ?

Akzeptierte Antwort

Star Strider
Star Strider am 8 Jul. 2016
I’m not quite sure what you want.
See if this works for you:
M = randi(99, 10);
RM = reshape(M, 10, 2, [])
Mmean = mean(RM,2)
  2 Kommentare
Niki
Niki am 8 Jul. 2016
Bearbeitet: Niki am 8 Jul. 2016
@Star Strider average of each two columns should give me 1 column . means average of each element . Let say if I have 100 columns in my original data, it should give me 50 columns
Star Strider
Star Strider am 8 Jul. 2016
I forgot a squeeze call. This will do what you want, and should work with any matrix:
M = randi(99, 10); % Create Data
RM = reshape(M, size(M,1), 2, []) % Reshape
Mmean = squeeze(mean(RM,2)) % Desired Result

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Thorsten
Thorsten am 8 Jul. 2016
mean(reshape(mean(X), 2, []))
  1 Kommentar
Niki
Niki am 8 Jul. 2016
Bearbeitet: Niki am 8 Jul. 2016
@Thorsten average of each two columns should give me 1 column . means average of each element . Let say if I have 100 columns in my original data, it should give me 50 columns

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by