Abstract
We introduce an innovative methodology to identify football players at the origin of threatening actions in a team. In our framework, a threat is defined as entering the opposing team’s danger area. We investigate the timing of threat events and ball touches of players, and capture their correlation using Hawkes processes. Our model-based approach allows us to evaluate a player’s ability to create danger both directly and through interactions with teammates. We define a new index, called Generation of Threat (GoT), that measures in an unbiased way the contribution of a player to threat generation. For illustration, we present a detailed analysis of Chelsea’s 2016–2017 season, with a standout performance from Eden Hazard. We are able to credit each player for his involvement in danger creation and determine the main circuits leading to threat. In the same spirit, we investigate the danger generation process of Stade Rennais in the 2021–2022 season. Furthermore, we establish a comprehensive ranking of Ligue 1 players based on their generated threat in the 2021–2022 season. Our analysis reveals surprising results, with players such as Jason Berthomier, Moses Simon and Frederic Guilbert among the top performers in the GoT rankings.
Funding source: Machine Learning & Systematic Methods in Finance
Funding source: Deep Finance and Statistics
Acknowledgments
The authors thank Anna Bonnet for her help with the estimation of Hawkes processes in large dimensions. They are also grateful to Charlotte Dion and Céline Duval.
-
Research ethics: Not applicable.
-
Informed consent: Not applicable.
-
Author contributions: All authors have accepted responsibility for the entire content of this manuscript and approved its submission.
-
Use of Large Language Models, AI and Machine Learning Tools: None declared.
-
Conflict of interest: The authors state no conflict of interest.
-
Research funding: The authors gratefully acknowledge financial support from the chairs “Machine Learning & Systematic Methods in Finance” and “Deep Finance and Statistics”.
-
Data availability: The data are not publicly available.
A: Stade Rennais
In this appendix, we present a detailed analysis of one of the Ligue 1 teams in the 2021–2022 season.
A.1: Selected games
In the same spirit as Section 4, we choose a collection of games where the formation is the same and starting lineup is as stable as possible. Table 8 shows the selected matches for Stade Rennais. The team plays in a 433 formation in all of these games but the starting 11 is not always exactly the same. In fact, some players are sometimes rotated for a game or two, but we assume that the substitute behaves approximately the same as the starting player. Stade Rennais line up as follows in the selected games, where the main player in each position is in bold:
Gomis/Alemdar
Traore – Omari/Bade – Aguerd/Bade/Santamaria – Truffert/Meling
Majer – Santamaria/Martin – Tait
Bourigeaud – Laborde/Guirassy – Terrier
List of selected games for Stade Rennais F.C.
| Date | Opponent | Home or away | Competition |
|---|---|---|---|
| May 11, 2022 | Nantes | Away | French Ligue 1 |
| Apr 2, 2022 | Nice | Away | French Ligue 1 |
| May 14, 2022 | Marseille | Home | French Ligue 1 |
| Dec 22, 2021 | Monaco | Away | French Ligue 1 |
| Mar 20, 2022 | Metz | Home | French Ligue 1 |
| Apr 15, 2022 | Monaco | Home | French Ligue 1 |
| Apr 30, 2022 | St Etienne | Home | French Ligue 1 |
| Apr 24, 2022 | Lorient | Home | French Ligue 1 |
| Nov 20, 2021 | Montpellier | Home | French Ligue 1 |
| May 21, 2022 | Lille | Away | French Ligue 1 |
| Nov 7, 2021 | Lyon | Home | French Ligue 1 |
We construct a 12-dimensional counting process from the selected Stade Rennais games regardless of the players starting. We use the data from each game as long as the 11 players on the pitch correspond to the scheme provided above. We then fit a 12-dimensional Hawkes process and associate the estimated metrics of each position with the main player occupying it.
Generated threat metrics for the players of Stade Rennais. The table is sorted by
| Player name | GoT(dir) | GoT(ind) |
|
|
|---|---|---|---|---|
| Benjamin Bourigeaud | 0.14 | 0.16 | 11.8 | 12.6 |
| Martin Terrier | 0.13 | 0.17 | 8.6 | 9.5 |
| Lovro Majer | 0.08 | 0.11 | 6.9 | 8.1 |
| Flavien Tait | 0.06 | 0.09 | 5.5 | 7.2 |
| Adrien Truffert | 0.02 | 0.06 | 2.4 | 5.2 |
| Hamari Traoré | 0.01 | 0.05 | 1.5 | 4.6 |
| Nayef Aguerd | 0.00 | 0.04 | 0.0 | 4.5 |
| Baptiste Santamaría | 0.00 | 0.05 | 0.4 | 4.3 |
| Warmed Omari | 0.00 | 0.04 | 0.0 | 4.0 |
| Gaëtan Laborde | 0.04 | 0.08 | 2.0 | 3.0 |
| Alfred Gomis | 0.00 | 0.01 | 0.0 | 0.7 |

Graph summarizing the interactions between Stade Rennais players. The width of an arrow from player p1 to player p2 is proportional to the expected number of touches of player p2 generated by one touch from player p1. The size of the circle of player p is proportional to the sum of the arrow sizes received, indicating the involvement of the player in the considered games. The color of the circle represents the GoT i index for each player.
A.2: Results and discussion
In Table 9, we rank the Stade Rennais players with respect to generated threat metrics. Figure 7 graphically represents the direct interactions between them and Figure 8 displays the estimated branching matrix. We can see that the team adopts a 433 shape that progresses mainly through the wings. The danger creation is asymmetric with more combinations occurring on the right side, where Majer is the most creative midfielder. Interestingly, despite being a central midfielder, Flavien Tait delivers a large value of
The main threat sources are Bourigeaud, Majer, and Terrier. These three players are outstanding going forward. Terrier is the leader of the team in goalscoring and ranks third in Ligue 1 but seems to be involved in danger creation as well. Bourigeaud generating the most threat is not surprising since he is the creative force of the team. In fact, he ranks first in the league in terms of key passes with 3.2 per game, and first in accurate crosses with 104 in the season.

Estimated branching matrix for Stade Rennais.
As expected, the center backs have zero direct threat contribution. However, in terms of indirect threat per 90 min
Finally, we can observe from Figure 7 some remarkable circuits that lead to dangerous situations. These patterns of play should be taken into account by an opposing team when facing Stade Rennais:
Aguerd → Truffert → Terrier → Threat.
Terrier → Tait → Threat. Terrier is highly effective in generating direct threats, but he also frequently combines with Flavien Tait to create danger. Similarly, Bourigeaud often gives the ball to Lovro Majer to generate indirect threat.
Omari → Traoré → Bourigeaud → Threat.
Omari → Bourigeaud → Threat. This is a straightforward pattern from defense to attack that should be controlled. Omari is highly successful in progressing the ball, both through slow build-up play by passing the ball to the right-back Traoré, as well as through fast transitions with direct passes to Bourigeaud.
B: Top 100 ranking of Ligue 1 player in terms of GoT
Ranking of Ligue 1 players in terms of GoT(dir).
| Rank | Name | Position | Team | Minutes | GoT(dir) |
|---|---|---|---|---|---|
| 1 | Lionel Messi | 10 | Paris Saint-Germain | 630 | 0.130 |
| 2 | Ángel Di María | 10 | Paris Saint-Germain | 1,171 | 0.128 |
| 3 | Moses Simon | 11 | Nantes | 1,222 | 0.120 |
| 4 | Kylian Mbappé | 9 | Paris Saint-Germain | 1,338 | 0.110 |
| 5 | Lionel Messi | 9 | Paris Saint-Germain | 675 | 0.109 |
| 6 | Martin Terrier | 11 | Rennes | 1,386 | 0.108 |
| 7 | Kylian Mbappé | 11 | Paris Saint-Germain | 1,066 | 0.107 |
| 8 | Romain Faivre | 7 | Brest | 630 | 0.106 |
| 8 | Houssem Aouar | 7 | Lyon | 810 | 0.106 |
| 10 | Sofiane Boufal | 9 | Angers | 771 | 0.100 |
| 11 | Jonathan Ikoné | 7 | Lille | 767 | 0.096 |
| 12 | Wissam Ben Yedder | 9 | Monaco | 1,625 | 0.094 |
| 13 | Franck Honorat | 11 | Brest | 838 | 0.093 |
| 13 | Karl Toko-Ekambi | 11 | Lyon | 1,855 | 0.093 |
| 15 | Benjamin Bourigeaud | 10 | Rennes | 1,719 | 0.092 |
| 16 | Sofiane Boufal | 11 | Angers | 665 | 0.091 |
| 17 | Justin Kluivert | 11 | Nice | 1,207 | 0.090 |
| 19 | Dimitri Payet | 9 | Marseille | 617 | 0.088 |
| 19 | Kevin Gameiro | 10 | Strasbourg | 673 | 0.088 |
| 19 | Neymar | 11 | Paris Saint-Germain | 1,258 | 0.088 |
| 21 | Jodel Dossou | 10 | Clermont | 1,762 | 0.086 |
| 22 | Lucas Da Cunha | 10 | Clermont | 606 | 0.084 |
| 22 | Jim Allevinah | 11 | Clermont | 858 | 0.084 |
| 24 | Frédéric Guilbert | 2 | Strasbourg | 2,428 | 0.082 |
| 25 | Armand Laurienté | 9 | Lorient | 842 | 0.080 |
| 26 | Ludovic Blas | 7 | Nantes | 810 | 0.078 |
| 27 | Gaël Kakuta | 9 | Lens | 976 | 0.077 |
| 28 | Arnaud Kalimuendo-Muinga | 11 | Lens | 724 | 0.075 |
| 29 | Cengiz Ünder | 10 | Marseille | 1,047 | 0.074 |
| 29 | Florent Mollet | 10 | Montpellier | 1,269 | 0.074 |
| 31 | Téji Savanier | 7 | Montpellier | 2,209 | 0.071 |
| 32 | Ghislain Konan | 3 | Reims | 1,007 | 0.070 |
| 33 | Lovro Majer | 7 | Rennes | 1,302 | 0.068 |
| 34 | Kevin Volland | 7 | Monaco | 1,131 | 0.067 |
| 34 | Jonathan Clauss | 2 | Lens | 1,940 | 0.067 |
| 36 | Angelo Fulgini | 8 | Angers | 630 | 0.066 |
| 36 | Andy Delort | 10 | Nice | 1,478 | 0.066 |
| 38 | Javairô Dilrosun | 9 | Bordeaux | 675 | 0.064 |
| 39 | Vanderson | 10 | Monaco | 619 | 0.061 |
| 40 | Lucas Paquetá | 7 | Lyon | 1,248 | 0.060 |
| 40 | Burak Yilmaz | 9 | Lille | 1,900 | 0.060 |
| 43 | Jonathan Bamba | 11 | Lille | 1,763 | 0.059 |
| 43 | Thomas Foket | 2 | Reims | 631 | 0.059 |
| 43 | Jason Berthomier | 7 | Clermont | 1,244 | 0.059 |
| 45 | Amine Gouiri | 9 | Nice | 1,749 | 0.058 |
| 46 | Gaëtan Laborde | 9 | Rennes | 1,305 | 0.057 |
| 47 | Ibrahima Sissoko | 7 | Strasbourg | 826 | 0.055 |
| 48 | Jonathan David | 10 | Lille | 2,072 | 0.054 |
| 49 | Dimitri Lienard | 3 | Strasbourg | 1,728 | 0.050 |
| 51 | Flavien Tait | 8 | Rennes | 1,129 | 0.046 |
| 51 | Florian Sotoca | 10 | Lens | 1,119 | 0.046 |
| 51 | Jérémy Le Douaron | 10 | Brest | 759 | 0.046 |
| 53 | Andy Delort | 9 | Nice | 795 | 0.045 |
| 55 | Youcef Atal | 2 | Nice | 1,032 | 0.044 |
| 55 | Randal Kolo Muani | 9 | Nantes | 876 | 0.044 |
| 55 | Stephy Mavididi | 11 | Montpellier | 1,585 | 0.044 |
| 55 | Aleksandr Golovin | 11 | Monaco | 607 | 0.044 |
| 58 | Elbasan Rashani | 11 | Clermont | 1,588 | 0.043 |
| 59 | Mohamed Bayo | 9 | Clermont | 2,331 | 0.042 |
| 60 | Abdu Conté | 3 | Troyes | 695 | 0.041 |
| 60 | Sanjin Prcic | 11 | Strasbourg | 652 | 0.041 |
| 64 | Bruno Guimarães | 4 | Lyon | 900 | 0.040 |
| 64 | Anthony Caci | 3 | Strasbourg | 1,400 | 0.040 |
| 64 | Kevin Gameiro | 9 | Strasbourg | 1,458 | 0.040 |
| 64 | Hicham Boudaoui | 7 | Nice | 1,304 | 0.040 |
| 64 | Gerson | 8 | Marseille | 704 | 0.040 |
| 67 | Sofiane Diop | 11 | Monaco | 631 | 0.039 |
| 68 | Igor Silva | 2 | Lorient | 1,197 | 0.038 |
| 69 | Renato Sanches | 8 | Lille | 951 | 0.037 |
| 69 | Issa Kaboré | 2 | Troyes | 1,679 | 0.037 |
| 71 | Mohamed-Ali Cho | 10 | Angers | 807 | 0.035 |
| 71 | Angelo Fulgini | 9 | Angers | 751 | 0.035 |
| 74 | Akim Zedadka | 2 | Clermont | 3,330 | 0.034 |
| 74 | Pol Lirola | 2 | Marseille | 863 | 0.034 |
| 74 | Adrien Thomasson | 7 | Strasbourg | 1,853 | 0.034 |
| 76 | Habib Diallo | 10 | Strasbourg | 859 | 0.033 |
| 76 | Xavier Chavalerin | 11 | Troyes | 949 | 0.033 |
| 78 | Jean-Ricner Bellegarde | 11 | Strasbourg | 1,454 | 0.032 |
| 78 | Maxence Caqueret | 8 | Lyon | 1,389 | 0.032 |
| 80 | Vital N’Simba | 3 | Clermont | 2,731 | 0.031 |
| 80 | Ruben Aguilar | 2 | Monaco | 1,205 | 0.031 |
| 83 | Seko Fofana | 8 | Lens | 1,861 | 0.030 |
| 83 | Ismail Jakobs | 3 | Monaco | 650 | 0.030 |
| 83 | Terem Moffi | 10 | Lorient | 911 | 0.030 |
| 87 | Valère Germain | 9 | Montpellier | 1,083 | 0.029 |
| 87 | Stéphane Bahoken | 10 | Angers | 657 | 0.029 |
| 87 | Youssouf Fofana | 8 | Monaco | 1,116 | 0.029 |
| 87 | Mattéo Guendouzi | 7 | Marseille | 1,350 | 0.029 |
| 87 | Ludovic Ajorque | 10 | Strasbourg | 1,334 | 0.029 |
| 90 | Ludovic Ajorque | 9 | Strasbourg | 1,243 | 0.028 |
| 90 | Marco Verratti | 4 | Paris Saint-Germain | 602 | 0.028 |
| 93 | Baptiste Santamaría | 8 | Rennes | 675 | 0.027 |
| 93 | Vincent Le Goff | 3 | Lorient | 1,440 | 0.027 |
| 93 | Ricardo Mangas | 3 | Bordeaux | 613 | 0.027 |
| 96 | Caio Henrique | 3 | Monaco | 1,454 | 0.026 |
| 96 | Mihailo Ristic | 3 | Montpellier | 1,150 | 0.026 |
| 96 | Junior Sambia | 2 | Montpellier | 732 | 0.026 |
| 98 | Souleyman Doumbia | 3 | Angers | 1,797 | 0.025 |
| 98 | Przemyslaw Frankowski | 3 | Lens | 1,191 | 0.025 |
| 100 | Florian Tardieu | 8 | Troyes | 1,530 | 0.024 |
Ranking of Ligue 1 players in terms of
| Rank | Name | Position | Team | Minutes |
|
|---|---|---|---|---|---|
| 1 | Lionel Messi | 10 | Paris Saint-Germain | 630 | 14.911 |
| 2 | Ángel Di María | 10 | Paris Saint-Germain | 1,171 | 13.218 |
| 3 | Neymar | 11 | Paris Saint-Germain | 1,258 | 12.724 |
| 4 | Marco Verratti | 4 | Paris Saint-Germain | 602 | 12.581 |
| 5 | Lionel Messi | 9 | Paris Saint-Germain | 675 | 12.353 |
| 6 | Romain Faivre | 7 | Brest | 630 | 10.402 |
| 7 | Houssem Aouar | 7 | Lyon | 810 | 10.077 |
| 8 | Téji Savanier | 7 | Montpellier | 2,209 | 9.608 |
| 9 | Marco Verratti | 8 | Paris Saint-Germain | 1,069 | 9.446 |
| 10 | Jason Berthomier | 7 | Clermont | 1,244 | 9.340 |
| 11 | Benjamin Bourigeaud | 10 | Rennes | 1,719 | 9.211 |
| 12 | Sofiane Boufal | 9 | Angers | 771 | 9.100 |
| 13 | Bruno Guimarães | 4 | Lyon | 900 | 8.817 |
| 14 | Dimitri Payet | 9 | Marseille | 617 | 8.815 |
| 15 | Moses Simon | 11 | Nantes | 1,222 | 8.790 |
| 16 | Martin Terrier | 11 | Rennes | 1,386 | 8.639 |
| 17 | Kylian Mbappé | 11 | Paris Saint-Germain | 1,066 | 8.577 |
| 18 | Frédéric Guilbert | 2 | Strasbourg | 2,428 | 8.421 |
| 19 | Ruben Aguilar | 2 | Monaco | 1,205 | 8.019 |
| 20 | Lovro Majer | 7 | Rennes | 1,302 | 7.927 |
| 21 | Lucas Da Cunha | 10 | Clermont | 606 | 7.882 |
| 22 | Kylian Mbappé | 9 | Paris Saint-Germain | 1,338 | 7.733 |
| 23 | Ghislain Konan | 3 | Reims | 1,007 | 7.721 |
| 24 | Sanjin Prcic | 11 | Strasbourg | 652 | 7.624 |
| 25 | Sofiane Boufal | 11 | Angers | 665 | 7.547 |
| 26 | Lucas Paquetá | 7 | Lyon | 1,248 | 7.450 |
| 27 | Karl Toko-Ekambi | 11 | Lyon | 1,855 | 7.365 |
| 28 | Jonathan Ikoné | 7 | Lille | 767 | 7.285 |
| 29 | Franck Honorat | 11 | Brest | 838 | 7.207 |
| 30 | Achraf Hakimi | 2 | Paris Saint-Germain | 1,781 | 7.125 |
| 31 | Idrissa Gueye | 8 | Paris Saint-Germain | 662 | 7.090 |
| 32 | Dimitri Lienard | 3 | Strasbourg | 1,728 | 7.050 |
| 33 | Gerson | 8 | Marseille | 704 | 7.016 |
| 34 | Vanderson | 10 | Monaco | 619 | 6.939 |
| 35 | Ibrahima Sissoko | 7 | Strasbourg | 826 | 6.892 |
| 36 | Ludovic Blas | 7 | Nantes | 810 | 6.816 |
| 37 | Gaël Kakuta | 9 | Lens | 976 | 6.802 |
| 38 | Jonathan Clauss | 2 | Lens | 1,940 | 6.757 |
| 39 | Justin Kluivert | 11 | Nice | 1,207 | 6.700 |
| 40 | Flavien Tait | 8 | Rennes | 1,129 | 6.671 |
| 41 | Kevin Gameiro | 10 | Strasbourg | 673 | 6.569 |
| 42 | Florent Mollet | 10 | Montpellier | 1,269 | 6.465 |
| 43 | Angelo Fulgini | 8 | Angers | 630 | 6.459 |
| 44 | Renato Sanches | 8 | Lille | 951 | 6.427 |
| 45 | Henrique | 3 | Lyon | 619 | 6.385 |
| 46 | Danilo Pereira | 4 | Paris Saint-Germain | 879 | 6.346 |
| 47 | Pol Lirola | 2 | Marseille | 863 | 6.327 |
| 48 | Jim Allevinah | 11 | Clermont | 858 | 6.303 |
| 49 | Youcef Atal | 2 | Nice | 1,032 | 6.258 |
| 50 | Maxence Caqueret | 8 | Lyon | 1,389 | 6.229 |
| 51 | Vital N’Simba | 3 | Clermont | 2,731 | 6.066 |
| 52 | Anthony Caci | 3 | Strasbourg | 1,400 | 6.023 |
| 53 | Emerson | 3 | Lyon | 1,848 | 6.019 |
| 54 | Aleksandr Golovin | 11 | Monaco | 607 | 5.973 |
| 55 | Birger Meling | 3 | Rennes | 776 | 5.936 |
| 56 | Juan Bernat | 3 | Paris Saint-Germain | 777 | 5.929 |
| 57 | Jodel Dossou | 10 | Clermont | 1,762 | 5.864 |
| 58 | Caio Henrique | 3 | Monaco | 1,454 | 5.855 |
| 59 | Jonas Martin | 4 | Rennes | 1,115 | 5.810 |
| 60 | Thomas Foket | 2 | Reims | 631 | 5.805 |
| 61 | Jonathan Bamba | 11 | Lille | 1,763 | 5.632 |
| 62 | Marquinhos | 5 | Paris Saint-Germain | 2,340 | 5.625 |
| 63 | Florian Sotoca | 10 | Lens | 1,119 | 5.598 |
| 64 | Jordan Ferri | 8 | Montpellier | 2,129 | 5.516 |
| 65 | Aurélien Tchouaméni | 4 | Monaco | 1,620 | 5.431 |
| 66 | Malo Gusto | 2 | Lyon | 1,369 | 5.382 |
| 67 | Cheick Oumar Doucouré | 7 | Lens | 1,350 | 5.372 |
| 68 | Armand Laurienté | 9 | Lorient | 842 | 5.345 |
| 69 | Akim Zedadka | 2 | Clermont | 3,330 | 5.281 |
| 70 | Presnel Kimpembe | 6 | Paris Saint-Germain | 1,840 | 5.230 |
| 71 | Ismail Jakobs | 3 | Monaco | 650 | 5.199 |
| 72 | Fábio | 3 | Nantes | 726 | 5.154 |
| 73 | Thilo Kehrer | 2 | Paris Saint-Germain | 632 | 5.144 |
| 74 | Cengiz Ünder | 10 | Marseille | 1,047 | 5.079 |
| 75 | Léo Dubois | 2 | Lyon | 1,246 | 5.060 |
| 76 | Mattéo Guendouzi | 7 | Marseille | 1,350 | 4.995 |
| 77 | Facundo Medina | 4 | Lens | 1,329 | 4.953 |
| 78 | Adrien Thomasson | 7 | Strasbourg | 1,853 | 4.921 |
| 79 | Nayef Aguerd | 6 | Rennes | 1,698 | 4.908 |
| 80 | Abdu Conté | 3 | Troyes | 695 | 4.891 |
| 81 | Javairô Dilrosun | 9 | Bordeaux | 675 | 4.845 |
| 82 | Hamari Traoré | 2 | Rennes | 1,878 | 4.836 |
| 83 | Przemyslaw Frankowski | 3 | Lens | 1,191 | 4.778 |
| 84 | Wissam Ben Yedder | 9 | Monaco | 1,625 | 4.685 |
| 85 | Vincent Le Goff | 3 | Lorient | 1,440 | 4.669 |
| 86 | Valentin Rongier | 2 | Marseille | 899 | 4.668 |
| 87 | Angelo Fulgini | 9 | Angers | 751 | 4.661 |
| 88 | William Saliba | 5 | Marseille | 1,800 | 4.652 |
| 89 | Boubacar Kamara | 4 | Marseille | 1,497 | 4.636 |
| 90 | Nuno Mendes | 3 | Paris Saint-Germain | 1,246 | 4.599 |
| 91 | Jason Denayer | 6 | Lyon | 630 | 4.591 |
| 92 | Baptiste Santamaría | 8 | Rennes | 675 | 4.536 |
| 93 | Jonathan Gradit | 6 | Lens | 1,710 | 4.535 |
| 94 | Youssouf Fofana | 8 | Monaco | 1,116 | 4.517 |
| 95 | Florian Tardieu | 8 | Troyes | 1,530 | 4.496 |
| 96 | Jordan Lotomba | 2 | Nice | 1,410 | 4.454 |
| 97 | Mihailo Ristic | 3 | Montpellier | 1,150 | 4.439 |
| 98 | Warmed Omari | 5 | Rennes | 1,710 | 4.407 |
| 99 | Melvin Bard | 3 | Nice | 2,470 | 4.350 |
| 100 | Seko Fofana | 8 | Lens | 1,861 | 4.345 |
The main formation clusters for each team in Ligue 1 in the 2021–2022 season.
| Team | Formation cluster |
|---|---|
| Angers | 3 |
| Bordeaux | 3 |
| Brest | 2 |
| Clermont | 1 |
| Lens | 3 |
| Lille | 2 |
| Lorient | 3 |
| Lyon | 1 |
| Marseille | 1 |
| Metz | 3 |
| Monaco | 1 |
| Montpellier | 1 |
| Nantes | 1 |
| Nice | 2 |
| Paris Saint-Germain | 1 |
| Reims | 3 |
| Rennes | 1 |
| St Etienne | 4 |
| Strasbourg | 3 |
| Troyes | 4 |
References
Adamopoulos, L. (1976). Cluster models for earthquakes: regional comparisons. J. Int. Assoc. Math. Geol. 8: 463–475, https://doi.org/10.1007/bf01028982.Search in Google Scholar
Bonnet, A., Dion-Blanc, C., Gindraud, F., and Lemler, S. (2022a). Neuronal network inference and membrane potential model using multivariate Hawkes processes. J. Neurosci. Methods 372: 109550, https://doi.org/10.1016/j.jneumeth.2022.109550.Search in Google Scholar PubMed
Bonnet, A., Herrera, M. M., and Sangnier, M. (2022b). Inference of multivariate exponential Hawkes processes with inhibition and application to neuronal activity. arXiv preprint arXiv:2205.04107.10.1007/s11222-023-10264-wSearch in Google Scholar
Brémaud, P. (1981). Point Processes and Queues: Martingale Dynamics, Vol. 50. Springer.10.1007/978-1-4684-9477-8Search in Google Scholar
Green, S. (2012)., Assessing the performance of Premier League goalscorers. Available at: https://www.statsperform.com/resource/assessing-the-performance-of-premier-league-goalscorers/.Search in Google Scholar
Hawkes, A. G. (1971a). Point spectra of some mutually exciting point processes. J. Roy. Stat. Soc.: Ser. B (Methodological) 33: 438–443, https://doi.org/10.1111/j.2517-6161.1971.tb01530.x.Search in Google Scholar
Hawkes, A. G. (1971b). Spectra of some self-exciting and mutually exciting point processes. Biometrika 58: 83–90, https://doi.org/10.2307/2334319.Search in Google Scholar
Hawkes, A. G. and Oakes, D. (1974). A cluster process representation of a self-exciting process. J. Appl. Probab. 11: 493–503, https://doi.org/10.1017/s0021900200096273.Search in Google Scholar
Jaisson, T. and Rosenbaum, M. (2015). Limit theorems for nearly unstable Hawkes processes. Ann. Appl. Probab. 25, https://doi.org/10.1214/14-aap1005.Search in Google Scholar
Lambert, R. C., Tuleau-Malot, C., Bessaih, T., Rivoirard, V., Bouret, Y., Leresche, N., and Reynaud-Bouret, P. (2018). Reconstructing the functional connectivity of multiple spike trains using Hawkes models. J. Neurosci. Methods 297: 9–21, https://doi.org/10.1016/j.jneumeth.2017.12.026.Search in Google Scholar PubMed
Ogata, Y. (1981). On lewis’ simulation method for point processes. IEEE Trans. Inf. Theor. 27: 23–31, https://doi.org/10.1109/tit.1981.1056305.Search in Google Scholar
Ogata, Y. (1988). Statistical models for earthquake occurrences and residual analysis for point processes. J. Am. Stat. Assoc. 83: 9–27, https://doi.org/10.1080/01621459.1988.10478560.Search in Google Scholar
Ogata, Y. (1978). The asymptotic behaviour of maximum likelihood estimators for stationary point processes. Ann. Inst. Stat. Math. 30: 243–261, https://doi.org/10.1007/bf02480216.Search in Google Scholar
Singh, K. (2018)., Introducing Expected Threat (xT). Available at: https://karun.in/blog/expected-threat.html.Search in Google Scholar
Whitmore, J. (2021)., What Are Expected Assists (xA)?. Available at: https://theanalyst.com/eu/2021/03/what-are-expected-assists-xa/.Search in Google Scholar
© 2025 Walter de Gruyter GmbH, Berlin/Boston