<p><div><div><div><div data-show-faces="false" data-height="21" data-width="100" data-layout="button_count" data-send="true" data-href="https://www.r-bloggers.com/analyse-de-pronostics-pour-le-mondial-2018/"></div></div><div></div></div><div></div></div>
<div>
(This article was first published on <strong><a href="http://nc233.com/2018/07/analyse-de-pronostics-pour-le-mondial-2018/"> R – NC233</a></strong>, and kindly contributed to <a rel="nofollow" href="https://www.r-bloggers.com/">R-bloggers)</a> </div>
<div class="twitter-share"><a rel="nofollow" href="https://twitter.com/intent/tweet?url=http%3A%2F%2Fnc233.com%2F2018%2F07%2Fanalyse-de-pronostics-pour-le-mondial-2018%2F&via=nc233" class="twitter-share-button" target="_blank">Tweet</a></div>
<p><a rel="nofollow" href="https://lemonde.fr/mondial-2018/article/2018/07/16/qui-sont-les-bleus-champions-du-monde-2018_5332096_5193650.html" target="_blank">On est les champions !</a> Si nous n’avons pas eu le temps de faire un modèle de prédiction pour cette coupe du monde de football 2018 (mais FiveThirtyEight en a fait un très sympa, voir <a rel="nofollow" href="https://projects.fivethirtyeight.com/2018-world-cup-predictions/" target="_blank">ici</a>), cela ne nous a pas empêché de faire un concours de pronostics entre collègues et ex-collègues statisticiens, sur le site <a rel="nofollow" href="https://www.scorecast.fr/home.php" target="_blank">Scorecast</a>. Les résultats obtenus sont les suivants :</p>
<table>
<thead>
<tr>
<th>Joueur</th>
<th>Score</th>
</tr>
</thead>
<tbody>
<tr>
<td>Nic</td>
<td>102</td>
</tr>
<tr>
<td>Cle</td>
<td>100</td>
</tr>
<tr>
<td>Ron</td>
<td>100</td>
</tr>
<tr>
<td>Lud</td>
<td>96</td>
</tr>
<tr>
<td>Tho</td>
<td>90</td>
</tr>
<tr>
<td>Lio</td>
<td>88</td>
</tr>
<tr>
<td>Lis</td>
<td>87</td>
</tr>
<tr>
<td>Pap</td>
<td>86</td>
</tr>
<tr>
<td>Mau</td>
<td>84</td>
</tr>
<tr>
<td>Yan</td>
<td>78</td>
</tr>
<tr>
<td>Ant</td>
<td>78</td>
</tr>
<tr>
<td>Lau</td>
<td>75</td>
</tr>
<tr>
<td>Thi</td>
<td>71</td>
</tr>
<tr>
<td>Arn</td>
<td>56</td>
</tr>
<tr>
<td>Oli</td>
<td>28</td>
</tr>
<tr>
<td>Mar</td>
<td>7</td>
</tr>
</tbody>
</table>
<p></p>
<h2>Un autre système de points ?</h2>
<p>Le système de points utilisé par Scorecast est <a rel="nofollow" href="https://www.scorecast.fr/help/points.php" target="_blank">le suivant</a> : si on a le bon gagnant, on gagne un faible nombre de points ; si en plus du bon gagnant, on a bien prédit l’écart de buts, on gagne un peu plus de points ; et enfin, si on a le score exact, on gagne le nombre maximal de points. Ce nombre maximal de points augmente au fur et à mesure de la compétition : la finale vaut plus de points qu’un match de poules. Ce système ne tient pas compte de cotes préexistantes (comme le fait par exemple <a rel="nofollow" href="https://www.monpetitprono.com/" target="_blank">Mon petit prono</a>), ou du fait que certains matchs sont bien prédits par tout le monde alors que pour d’autres seule une personne a bien trouvé, voire personne.</p>
<p>Je propose donc ici d’altérer légèrement l’attribution des points, de la façon suivante : on dispose d’un nombre de points équivalent pour chaque match d’une même manche (match de poule, de quart, etc.), qu’on répartit entre les joueurs qui ont bien prédit le score, avec un avantage pour ceux qui ont le bon écart de points ou le bon score exact. Le nombre de points à répartir augmente tout au long de la compétition, de sorte que les phases finales aient plus d’importance dans le classement final.</p>
<p>Pourquoi faire ça ? Pour favoriser les joueurs qui ont fait des paris plus originaux et potentiellement plus risqués, ou en tout cas qui étaient les seuls à avoir la bonne intuition. Voici les résultats :</p>
<table>
<thead>
<tr>
<th>Joueur</th>
<th>Score</th>
<th>Score modifié</th>
</tr>
</thead>
<tbody>
<tr>
<td>Mau</td>
<td>84</td>
<td>185</td>
</tr>
<tr>
<td>Lud</td>
<td>96</td>
<td>163</td>
</tr>
<tr>
<td>Nic</td>
<td>102</td>
<td>144</td>
</tr>
<tr>
<td>Tho</td>
<td>90</td>
<td>136</td>
</tr>
<tr>
<td>Ant</td>
<td>78</td>
<td>135</td>
</tr>
<tr>
<td>Cle</td>
<td>100</td>
<td>126</td>
</tr>
<tr>
<td>Ron</td>
<td>100</td>
<td>123</td>
</tr>
<tr>
<td>Lis</td>
<td>87</td>
<td>120</td>
</tr>
<tr>
<td>Lio</td>
<td>88</td>
<td>115</td>
</tr>
<tr>
<td>Pap</td>
<td>86</td>
<td>108</td>
</tr>
<tr>
<td>Yan</td>
<td>78</td>
<td>105</td>
</tr>
<tr>
<td>Lau</td>
<td>75</td>
<td>100</td>
</tr>
<tr>
<td>Thi</td>
<td>71</td>
<td>90</td>
</tr>
<tr>
<td>Arn</td>
<td>56</td>
<td>78</td>
</tr>
<tr>
<td>Oli</td>
<td>28</td>
<td>43</td>
</tr>
<tr>
<td>Mar</td>
<td>7</td>
<td>10</td>
</tr>
</tbody>
</table>
<p></p>
<p>On constate que le classement évolue sensiblement avec cette nouvelle méthode de points ! Mais peut-être que certains auraient fait d’autres paris si ces règles étaient décidées…</p>
<h2>Choix des scores</h2>
<p>Une des principales difficultés du pronostic est qu’il ne suffit pas de savoir (ou de penser savoir) qui va gagner le match, mais il faut aussi indiquer le score attendu. Regardons si les prédictions de l’ensemble des parieurs de notre ligue ont été pertinentes par rapport aux vrais scores ! Pour cela, on détermine pour chaque score le pourcentage des matchs qui ont abouti à ce résultat d’une part, et le pourcentage des paris faits avec ce score. On regarde ensuite la différence entre les pourcentages, qu’on va illustrer par la <a rel="nofollow" href="https://fr.wikipedia.org/wiki/Heat_map" target="_blank"><em>heatmap</em></a> ci-dessous. Les cases vertes correspondent aux scores des matchs trop rarement prédits ; les cases rouges aux scores très souvent prédits mais qui n’arrivent que peu ou pas. </p>
<p><img alt="" src="https://i0.wp.com/nc233.com/wp-content/uploads/2018/07/heatmap.png?w=456" data-recalc-dims="1"></p>
<p>On constate que l’on a surestimé largement le nombre de 2-1, de 3-0 et de 4-0 (score qui n’est jamais arrivé lors de cette coupe du monde) ; ce sont d’ailleurs les seuls “gros” scores qui ont été surestimés dans les prédictions : tous les autres ont été sous-évalués. Cela peut laisser penser que les paris ont été faits avec une logique conservative et en évitant de tenter des scores absurdes, comme 7-0 pour l’Arabie Saoudite contre la Russie !</p>
<h2>Analyse de données et classification</h2>
<p>Enfin, une dernière utilisation possible de ce jeu de données est d’en faire l’analyse pour en extraire des classes de parieurs ayant un peu le même profil (ou en tout cas les mêmes réussites), et pour voir ce qui les sépare. Plusieurs méthodes sont possibles pour cela. </p>
<p>Commençons par un grand classique : la <a rel="nofollow" href="https://fr.wikipedia.org/wiki/Regroupement_hi%C3%A9rarchique#La_classification_ascendante_hi%C3%A9rarchique_(CAH)" target="_blank">Classification Ascendante Hiérarchique</a> (CAH pour les intimes), qui est une méthode qui part de groupes d’une personne, et qui, à chaque étape, regroupe deux groupes de telle façon à ce que l’inertie intra augmente au minimum. De façon moins barbare, cela veut dire qu’on regroupe les deux groupes qui se ressemblent le plus, étape par étape, jusqu’à arriver à la population totale. On représente souvent ce type de méthodes par un dendogramme, qui ressemble un peu à un <a rel="nofollow" href="https://fr.wikipedia.org/wiki/Arbre_phylog%C3%A9n%C3%A9tique" target="_blank">arbre phylogénétique</a> en biologie de l’évolution, et qui illustre la construction des classes, de bas en haut.</p>
<p><img alt="" src="https://i1.wp.com/nc233.com/wp-content/uploads/2018/07/dendogram.png?w=456" data-recalc-dims="1"></p>
<p>On remarque qu’il y a de nombreux binômes qui sont cohérents, et qui signalent des parieurs avec des profils comparables (par exemple, <em>Mar</em> et <em>Oli</em>, qui correspondent à deux joueurs ayant raté une bonne partie de la compétition, soit en arrêtant les paris, soit en arrivant en cours), et qu’il y a une séparation entre les quatre joueurs de gauche et les autres (eux-mêmes largement séparés entre les 3 les plus à gauche et les autres).</p>
<p>Une autre possibilité est d’utiliser l’<a rel="nofollow" href="https://fr.wikipedia.org/wiki/Analyse_en_composantes_principales" target="_blank">Analyse en Composantes Principales</a>, que nous avions déjà utilisé dans un contexte footballistique <a rel="nofollow" href="http://nc233.com/2016/09/sports-fifa-et-analyse-de-donnees/" target="_blank">ici</a> ou <a rel="nofollow" href="http://nc233.com/2016/10/data-analysis-of-the-french-football-league-players-with-r-and-factominer/" target="_blank">ici</a> (en). La logique est ici de chercher à résumer une matrice avec beaucoup d’informations (pour chaque joueur, l’ensemble des points obtenus via ses paris pour chaque match) en un nombre minimal de dimensions, dits d’axes, qui suffisent pour avoir une bonne idée de la logique d’organisation du jeu de données. </p>
<p>Si l’on réalise cette méthode ici, voici ce que l’on obtient sur les premiers axes :</p>
<p><a rel="nofollow" href="http://nc233.com/acp_var12/" target="_blank"><img sizes="(max-width: 2000px) 100vw, 2000px" src="https://i1.wp.com/nc233.com/wp-content/uploads/2018/07/ACP_var12.png?w=450" alt="" data-recalc-dims="1"></a><br>
<a rel="nofollow" href="http://nc233.com/acp_ind12/" target="_blank"><img sizes="(max-width: 2000px) 100vw, 2000px" src="https://i0.wp.com/nc233.com/wp-content/uploads/2018/07/ACP_ind12.png?w=450" alt="" data-recalc-dims="1"></a><br>
<a rel="nofollow" href="http://nc233.com/acp_var23/" target="_blank"><img sizes="(max-width: 2000px) 100vw, 2000px" src="https://i0.wp.com/nc233.com/wp-content/uploads/2018/07/ACP_var23.png?w=450" alt="" data-recalc-dims="1"></a><br>
<a rel="nofollow" href="http://nc233.com/acp_ind23/" target="_blank"><img sizes="(max-width: 2000px) 100vw, 2000px" src="https://i2.wp.com/nc233.com/wp-content/uploads/2018/07/ACP_ind23.png?w=450" alt="" data-recalc-dims="1"></a></p>
<p>L’axe 1 est souvent victime de ce qu’on appelle l’”effet taille” : on entend par là le fait que les individus ayant de grandes valeurs de certaines variables en ont souvent aussi pour les autres variables, et symétriquement pour les individus qui ont des petites valeurs. En effet, on voit que la variable supplémentaire, le total de points obtenus (avec la méthode Scorecast), en bleu, est proche de l’axe 1. Cela veut dire que les individus à droite de l’axe ont tendance à avoir un score important, tandis que ceux à gauche n’ont pas très bien réussi leurs prédictions.</p>
<p>On constate également que les représentations sur les plans constitués des dimensions 1-2, et 2-3, ont tendance à rapprocher les individus que la classification effectuée plus haut associait en binôme. Cela montre une certaine cohérence, ce qui est toujours rassurant !</p>
<p>Plus dans le détail, on voit que les axes 2 et 3 semblent correspondre aux paris suivants, qui sont donc discriminants entre les différents joueurs :</p>
<ul>
<li>Pour l’axe 2, avoir réussi son pari sur les matchs Pérou-Danemark, Mexique-Suède, Brésil-Suisse, Espagne-Russie et Argentine-Croatie</li>
<li>Pour l’axe 3, avoir réussi son pari sur les matchs Japon-Sénégal, Suisse-Costa Rica, Danemark-France ou encore Brésil-Mexique</li>
</ul>
<p>Difficile de trouver une interprétation de ces axes…</p>
<div class="twitter-share"><a rel="nofollow" href="https://twitter.com/intent/tweet?url=http%3A%2F%2Fnc233.com%2F2018%2F07%2Fanalyse-de-pronostics-pour-le-mondial-2018%2F&via=nc233" class="twitter-share-button" target="_blank">Tweet</a></div>
	<p>
<div>
<div>To <strong>leave a comment</strong> for the author, please follow the link and comment on their blog: <strong><a href="http://nc233.com/2018/07/analyse-de-pronostics-pour-le-mondial-2018/"> R – NC233</a></strong>.</div>
<hr>
<a rel="nofollow" href="https://www.r-bloggers.com/">R-bloggers.com</a> offers <strong><a rel="nofollow" href="https://feedburner.google.com/fb/a/mailverify?uri=RBloggers">daily e-mail updates</a></strong> about <a rel="nofollow" href="https://www.r-project.org/" title="The R Project for Statistical Computing">R</a> news and <a rel="nofollow" href="https://www.r-bloggers.com/search/tutorial" title="R tutorials">tutorials</a> on topics such as: <a rel="nofollow" href="https://www.r-bloggers.com/search/data%20science" title="Data science">Data science</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/Big%20Data" title="Big Data">Big Data, <a rel="nofollow" href="https://www.r-users.com/" title="R jobs">R jobs</a>, visualization (<a rel="nofollow" href="https://www.r-bloggers.com/search/ggplot2" title="ggplot and ggplot2 tutorials">ggplot2</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/boxplot" title="Boxplots using lattice and ggplot2 tutorials">Boxplots</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/map" title="Maps and gis">maps</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/animation" title="Animation in R">animation</a>), programming (<a rel="nofollow" href="https://www.r-bloggers.com/search/RStudio" title="RStudio IDE for R">RStudio</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/sweave" title="Sweave and literate programming">Sweave</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/LaTeX" title="LaTeX in R">LaTeX</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/SQL" title="SQL and databases">SQL</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/eclipse" title="Eclipse IDE for R">Eclipse</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/git" title="git and github, Version Control System">git</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/hadoop" title="Large data in R using Hadoop">hadoop</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/Web+Scraping" title="Web Scraping of google, facebook, yahoo, twitter and more using R">Web Scraping</a>) statistics (<a rel="nofollow" href="https://www.r-bloggers.com/search/regression" title="Regressions and ANOVA analysis tutorials">regression</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/PCA" title="principal component analysis tutorial">PCA</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/time+series" title="Time series">time series</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/trading" title="finance trading">trading</a>) and more...
<img width="1" alt="" src="http://feeds.feedburner.com/~r/RBloggers/~4/vdMS1BYi9p4" height="1"></a></div>