-
Notifications
You must be signed in to change notification settings - Fork 61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
A few issues and discussion points wrt #242 #257
Comments
Thank you for raising the issues and starting the discussion, @probberechts. I must admit that I didn't think much about the potential implications while reviewing #242. I also completely forgot about the discussion in #135. As I recently mentioned in #240, it would be helpful if we had formal definitions for each of the |
Thanks for your input on this, @probberechts. Regarding 1/ the difference between Challenge & Tackle: I think we should add a
Regarding 2/ whether we want a @koenvo do you have an opinion on this? |
Yes, exactly. The Opta "Challenge" event agrees for ~90% with the StatsBomb's "Dribbled Past" event. You can find some examples of "Challenge" events in BEL - POR at Euro2020 at
There are 27 Opta "Challenge" and 22 StatsBomb "Dribbled Past" events in this game.
I like how StatsBomb defines a duel: "Duel events describe when a defender challenges an attacker in some way". One option would be to define a "Dribbled Past" event as I like this proposal because:
|
Thanks for sharing, I like your proposal. So would you agree with the following next actions:
|
I only have a minor remark regarding
The Wyscout docs give the following examples of a won dribble past attempt:
According to the current implementation of the StatsBomb deserializer, a team has to regain possession after a duel for it to be considered successful. Hence, only the first one would yield a I am not sure what the best solution would be here. You could certainly argue that the second and third examples are—albeit to a lesser degree—also successful. |
@probberechts I've created an overview of how different duel events of different providers, currently, are parsed by kloppy and two suggestions on how to change that to properly capture the dribbled past events. I've added an explicit and implicit suggestion on how to adjust the kloppy duel type definitions to be able to support dribbled past events. In the explicit version, we would add a I've done this exercise for Opta, StatsBomb & Wyscout v3. I'm not planning in the near future to adjust the Wyscout v3 parsing deserialization logic, but wanted to already do the thought exercise to make sure our decision is future-proof in case we will update the Wyscout v3 deserializer. Do you like any of the two proposals? Which has your preference? Or am I still missing something in my suggestion? |
Thanks @DriesDeprest. I am happy with the assignment of the Determining the
One idea would be to work with qualifiers (i.e., a The alternative would be to mostly rely on the provider's definitions as in your propososal. Trying to summarize this and stating what's still unclear:
|
Thanks for reviewing and sharing your insights @probberechts. On the explicit vs implicit DuelType qualifiers, my preference would go the explicit suggestion. Regarding the Therefore, I would suggest that in the short run I refine our current implementation by also recognizing dribbled past events and for now use the providers' outcome labels to determine our result. Thus, I'll follow the logic which we'll agree upon here. @JanVanHaaren @koenvo any thoughts on this? I'd like to start implementing this, but want to make sure you guys agree with the plan. |
Although a bit late, I see a few issues wrt the recently merged PR #242 by @DriesDeprest.
First, the PR incorporates the Opta "Challenge" event in the kloppy
DuelEvent
. This changes the definition of aDuelEvent
that we agreed upon in #135. Previously, duels corresponded to events that require an intervention. Instead, the main use of Opta's "Challenge" event is to describe the player who gets dribbled past when a dribbler takes them on. It means that the player who gets dribbled past either did nothing at all or was not able to touch the ball. Otherwise, the event would have been labeled as a "Tackle". Therefore, the definition of aDuelEvent
in the Opta serializer is no longer consistent with the definition in the StatsBomb and Wyscout serializer.I am not per se against adding the "Challenge" event, but then the StatsBomb and Wyscout serializer should be adapted accordingly and there should be a distinction between -- in Opta terminology -- a tackle and a challenge. A tackle is an intervention, while a challenge is an opportunity to tackle. To draw a parallel, giving the same label to a tackle and a challenge would be like labeling a big chance as a shot. This also sabotages my effort to integrate Kloppy and socceraction because Challenges are not seen as actions in SPADL.
Second, the PR introduces a
DuelType.Tackle
qualifier, which is equivalent toDuelType.GROUND
+ ~DuelType.LOOSE_BALL
. Adding this was previously suggested by @MKlaasman in #135 (comment). Although I don't like redundant qualifiers, I am not strongly against it but it should be added to the StatsBomb and Wyscout parsers too and be documented to avoid confusion regarding the difference between a ground duel and a tackle.The text was updated successfully, but these errors were encountered: