finding mean and storing in a new cell

Hi,
I have the following data series:
-0.01342
-0.00200
0.04210
0.01854
0.07183
0.01343
0.07494
0.02699
-0.08492
0.02870
-0.01921
-0.07003
-0.07477
0.03745
-0.03381
0.01330
0.02992
-0.03780
-0.00544
0.04873
-0.00489
-0.01814
0.00560
0.00055
What I want to do is that I wish to find average of the first three numbers(cells) and then keep it in a new series' s first cell. Then average the next three and keep it in the second cell of the new series and so on.
Help needed.
Regards,
AMD.

3 commentaires

Try this A=[-0.01342 -0.00200 0.04210 0.01854 0.07183 0.01343 0.07494 0.02699 -0.08492 0.02870 -0.01921 -0.07003 -0.07477 0.03745 -0.03381 0.01330 0.02992 -0.03780 -0.00544 0.04873 -0.00489 -0.01814 0.00560 0.00055]
newCellMean=zeros((numel(A)/3),1);
for i=1:ceil(numel(A)/3)
if i==ceil(numel(A)/3)
newCellMean(i,1)=mean(A((((3*i)-2)):end,1));
else
newCellMean(i,1)=mean(A((((3*i)-2)):(3*i),1));
end
end
Matt Fig
Matt Fig le 13 Sep 2012
When you say 'cells' do you mean elements? In MATLAB a cell array is a specific thing, quite distinct from a numerical array.
ARS
ARS le 13 Sep 2012
Hi Matt,
By cell I here mean a data instance (excel cell). Not the cell array you are talking about.
Regards,
Ahamd.

Connectez-vous pour commenter.

 Réponse acceptée

Walter Roberson
Walter Roberson le 13 Sep 2012
Provided that your data is an exact multiple of 3 long:
mean( reshape(YourData, 3, []) )

Plus de réponses (0)

Catégories

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by