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.

 채택된 답변

Thorsten
Thorsten 2015년 10월 15일
편집: Thorsten 2015년 10월 15일

0 개 추천

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

댓글 수: 4

A small observation. For 2002 only matches -
>> mean(sum(X(X(:,3)==2002,6:7), 2))
Thorsten
Thorsten 2015년 10월 15일
Yes, you're right. I didn't read the question carefully.
Max
Max 2015년 10월 15일
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)

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Jos (10584)
Jos (10584) 2015년 10월 16일

0 개 추천

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

카테고리

도움말 센터File Exchange에서 Tables에 대해 자세히 알아보기

질문:

Max
2015년 10월 15일

답변:

2015년 10월 16일

Community Treasure Hunt

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

Start Hunting!

Translated by