# defining the mean of a values inside a matrix

1 view (last 30 days)

Show older comments

Greetings,

I was trying to find a way to find the mean of the values inside the matrix. For example, [1,2,3,4,5,6] I want to find the average between 1 & 2/ 2&3/3&4/4&5 and so on

I tried to do a for-loop but It doesnt seemt to work when I compare the values to hand calculations

z18=(-length(theta)/2+(0:length(theta)))'*h; % Travel of total 18 layers %%%% 19 values due to neutral axis

z18t=((-length(theta)/2+(0:length(theta)))'*h)/2; %% I took this approach as well but it does not work

for t=1:length(z18)

tt=max(1,(t-1));

ttt=min(length(z18), t+1);

tttt(t)=mean(z18(tt:ttt));

end

### Accepted Answer

### More Answers (1)

Khalid Mahmood
on 18 Apr 2021

Edited: Khalid Mahmood
on 18 Apr 2021

Further methods

1: movmean(matrix,windowsize) it calculates running mean but considers only windowsize elements

examples:

mm2=movmean(z18,2)

mm3=movmean(z18,3)

Using for loop to calculate running mean as [z18(1), (z18(1)+z18(2)/2, ( (z18(1)+z18(2) )/2+ z18(3) )/3,...]

mm=z18(1);

for p=2:length(z18)

mm(p)=(mm(p-1)+z18(p))/p;

end

##### 8 Comments

Khalid Mahmood
on 19 Apr 2021

### See Also

### Community Treasure Hunt

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

Start Hunting!