Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

New to MATLAB?

Calculate average of multiple matrices by reading an m.file

Asked by Samira

Samira (view profile)

on 1 Apr 2013

I'm having difficulty in calculating the mean of multiple matrices. I know how to calculate the mean, I have tried to use mean(match,3) in 3 dimension , but it does not give me the mean of all my matrices by columns If I calculate my mean in the while loop, it creates a mean for every matrix, and if I do it outside the while loop, it does it only for the last matrix.

For example while(reading file) ...

if(some conditions) continue

end

match= strcmp('Hello', out)//compares script with the word hello and outputs a logical array of 1s and 0s

M=mean(match,3)

end

match=[1 0 0 0 0 0] match=[0 0 1 0 0 0] match=[0 0 1 0 0 0]

I want the mean to be M=[1/3 0 2/3 0 0 0]

Do I need to use a for loop? Because it seems to be a much longer process to use a for loop to get the mean, but I do not see how else I could do this.

0 Comments

Samira

Samira (view profile)

Products

No products are associated with this question.

1 Answer

Answer by ChristianW

ChristianW (view profile)

on 1 Apr 2013
Accepted answer
k = 0;
while (reading file) ...
    k = k+1;
    match(k,:) = strcmp('Hello', out)
end
M = mean(match)

10 Comments

ChristianW

ChristianW (view profile)

on 3 Apr 2013

No, that is not your output. Your output is like this:

match=[1 0 0]
match=[0 1 1]
match=[1 1 0 1]

And yes, thats very possible the reason for your difficulties. To fill the empty space with zeros, you could use:

ml = strcmp('Hello', out); % match for the line
match(i,1:length(ml)) = ml; %#ok<SAGROW>
Samira

Samira (view profile)

on 3 Apr 2013

Sorry, I meant this is what I want my output to be like. Thank you so much, it works perfectly now! I have been trying to get this code to work for some time, thanks for taking the time to help me out, much appreciated. :D

ChristianW

ChristianW (view profile)

on 3 Apr 2013

You're welcome.

ChristianW

ChristianW (view profile)

Contact us