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

19 vues (au cours des 30 derniers jours)
Niki
Niki le 8 Juil 2016
Commenté : Star Strider le 8 Juil 2016
I have a big matrix and I want to get the average of each 2 columns,
Is there any function to do that ?

Réponse acceptée

Star Strider
Star Strider le 8 Juil 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 commentaires
Niki
Niki le 8 Juil 2016
Modifié(e) : Niki le 8 Juil 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 le 8 Juil 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

Connectez-vous pour commenter.

Plus de réponses (1)

Thorsten
Thorsten le 8 Juil 2016
mean(reshape(mean(X), 2, []))
  1 commentaire
Niki
Niki le 8 Juil 2016
Modifié(e) : Niki le 8 Juil 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

Connectez-vous pour commenter.

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by