1 4 2001 30 29 8 1
2 4 2002 4 5 2 1
2 4 2002 9 6 4 7
2 4 2002 19 14 7 3
2 4 2002 25 21 5 4
2 4 2002 7 18 4 5
2 4 2002 8 3 4 10
2 4 2003 10 27 8 0
Each row represents a match played. Column 6 represents the goals scored by 1 team and column 7 represents the goals scored by the opposition team. How do I find the average number of goals scored per match in the year 2002 (column 3)
Thanks for the help.

 Réponse acceptée

Thorsten
Thorsten le 15 Oct 2015
Modifié(e) : Thorsten le 15 Oct 2015

0 votes

To find the average across all matches
mean(sum(X(:,6:7), 2))

4 commentaires

A small observation. For 2002 only matches -
>> mean(sum(X(X(:,3)==2002,6:7), 2))
Thorsten
Thorsten le 15 Oct 2015
Yes, you're right. I didn't read the question carefully.
Max
Max le 15 Oct 2015
So how would I write the final answer for average score per game for the year 2002.
Sorry I'm quite new to matlab.
avgScoreFor2002 = mean(sum(X(X(:,3)==2002,6:7), 2));
sprintf('Average score/match for 2002 : %.4f', avgScoreFor2002)

Connectez-vous pour commenter.

Plus de réponses (1)

Jos (10584)
Jos (10584) le 16 Oct 2015

0 votes

As a beginner, you're better of to write out each individual step of the process in detail
Is2002Game = X(:,3)==2002 % true when the 3rd column equals 2002
Goals2002 = X(Is2002Game,[6 7]) % select goals of these matched
TotalScorePer2002Game = sum(Goals2002,2) % sum them per match
TotalScore = sum(TotalScorePer2002Game) % total sum

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by