The sequence of actions in a vector (football match)

3 ビュー (過去 30 日間)
Aragorn23
Aragorn23 2019 年 6 月 28 日
コメント済み: Aragorn23 2019 年 7 月 2 日
Hi everyone,
I am a Sports Science student, and I am starting to use Matlab.
I analysed a football match, and in an excel' column I put the sequence of actions that a team made:
"Player1
Player2
Player 11
Player1
shoot"
"Player1
Player2
Player 11
Player1
missed pass"
In the example, I represented two ball possessions, the first ends with a "shoot" and the second one end with a "missed pass". According to the example, I would like to represent the number of ball possessions of that team in another column:
1
1
1
1
1
2
2
2
2
2
How can I do that?
P.S. When two players appear in a row, there was a pass between them. Furthermore, I already changed the name of the players per numbers, as well as the technical actions (shoot, missed pass, etc...).
Regards,
  6 件のコメント
Guillaume
Guillaume 2019 年 6 月 30 日
So, you've got a column vector of numbers?
And the change of possession is whenever there's any number >= 50?
Aragorn23
Aragorn23 2019 年 6 月 30 日
Exactly.

サインインしてコメントする。

採用された回答

Guillaume
Guillaume 2019 年 6 月 30 日
No idea how we went from your original question to a vector of numbers. Anyway, if I understood correctly:
%example data
match = [9; 10; 6; 7; 8; 11; 10; 51; 4; 5; 11; 9; 50; 8; 4; 10; 53; 1; 2; 6; 7; 10; 9; 11; 54]
%not entirely clear on the desired output
%either
possession1 = cumsum([1; match(1:end-1)>=50])
%or
possession2 = mod(cumsum([0; match(1:end-1)>=50]), 2) + 1
%for visualisation of the results:
table(match, possession1, possession2)
  3 件のコメント
Guillaume
Guillaume 2019 年 7 月 2 日
It's even simpler:
possession = cumsum(match >= 50) + 1
Aragorn23
Aragorn23 2019 年 7 月 2 日
It worked. Thank you again

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeStartup and Shutdown についてさらに検索

製品


リリース

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by