
データレポートの作り方
はじめに
Wyscoutみたいなかっこいいデータレポートを作って見たいぜ、という欲望は全アナリスト共通です。とはいえ、それはアナリストのエゴなので(泣く泣く)捨て去ってしまって、大切なのは「せっかく睡眠時間を削って集めたデータをどうすれば効果的にチームに還元できるのか」を考えることです。
90分のデータを集めるために、少なく見積もっても3時間はかかります。僕が遅いだけかもしれませんが。それをいちいちエクセルに手作業で入力するとなると…想像もしたくありません。とはいえ一回徹夜すれば大体の物事は完結するので、それならいけそう、と思ったそこのあなた。毎週のようにリーグ戦に合わせて徹夜をしていては身が持ちません。なので、一回徹夜して「テンプレート」を作成してしまえば、今後徹夜はしなくても良くなるのです!素晴らしい!そして、エクセルさえあればほぼ自動でデータをぱぱぱっと綺麗なレポートにする仕組みを作ることができるのです!複雑なプログラミングの知識は入りません!
と、少し話は逸れてしまいましたが、時短はアナリストにとって最重要課題です。そもそも、アナリストの存在は監督やコーチが時間がなくて調べられない情報を集めるためと言っても過言ではありません。そのため、いかに脳筋作業の時間を減らし、もっと試合を分析したりとより多くのことに手がつけられるようにすることは大切です。なので、シーズンで30回徹夜するより、1回の徹夜でテンプレを作ってしまう方がいいのです。それでは早速「データレポートの作り方」を見ていきましょう。
データレポートを作る前に
さて、おそらくこの記事を読んでいる方はWyscoutやBeproやHudlにお金を払ってタグ付けをしてもらう、という手段が取れないクラブで活動するアナリストでしょう。実際、私もその一人です。まあ、「Hudlアシスト使ってみる?いくらくらいかかるの?まあYukiができるならいっか」という会話を耳にしましたが。私は無給です。無給で無休です。でも夢中です。五里霧中なう。でも毎回同じアップを練習前に15分やってお金を貰えているS&C(ストレングス&コンディショニング)のコーチが羨ましいです。
ちょと話が逸れ過ぎていますが、人々は皆、心に闇を抱えているのです。さて、お金で時間を変えない我々にとって、その限られた時間の使い方は重要です。しつこいようですが、徹底的に無駄を省きたいのです。
一旦、自分が集めているデータを振り返って見ましょう。「そのデータいる?」というものもあると思います。一番最初に書いたように、データレポートは「集めたデータをどうすれば効果的にチームに還元する」ことが目的です。なので、チームにとって必要のないデータは集める必要がありません。チームにとって必要なデータは違うと思うのですが、「そのデータから何がわかるの?」と自問自答して答えられないものは集める必要がありません。
また、各項目の定義も非常に重要です。基本的に、人間が集めたデータは不正確です。単純なタグ付けのミスもあれば、これはパスとクロスのどっちやねん!という定義と感覚の間で揺れ動いた結果、曖昧な精度になってしまう、というエラーもあり得ます。なので、多少の割り切りも必要ですが、できる限り正確な定義をしておくことが大切です。とはいえ、シーズン中に定義を変えちゃったりすると、同じ項目でも今後比較ができなくなってしまいます。ただ、最初から完璧な定義を用意できる訳がありません。困ったものですねぇ。あ、これに関しては僕も今悩んでいるので答えは出せません。ごめんなさい。
さて、そろそろあったまってきた頃ですし、一応今僕が作っている実物をお見せいたします。誰もウェールズの女子リーグに興味はないでしょうし。
書き忘れていました。用意するものはエクセルとデータを集めれる何かしらのやつです。Sportscodeを使っていますが、とりあえずなんでもいいと思います。なんかcsvファイルとかいう形でデータが出せれば大丈夫です。csvファイルじゃなくてもいいかもしれません。よくわかっていません。ソフトウェアは大学がくれたやつとSportscodeしかわかりません。とはいえそこが一番のネックですが…
実際のやつ
最初のページはメンバーとかスコアとかそういう情報なので割愛します。
1 ゲームの全体像
まずはゲームの全体像を1枚で確認できるようなものです。

基本4項目で、シュート数、クロス数、ファイナルサード侵入回数、ポゼッション率になります。初めはシュート数ではなくゴール数だったのですが、まあそんなもんみんな知ってるだろ、という結論になったのでシュート数にしました。ちなみに、この試合は5-0で完勝したゲームで、相手のシュート数が0です。
円グラフにした理由は両チームの比較としてわかりやすいかなーという感じです。これは「どっちの方がシュート数やクロス数が多かったのかな」というスタンスのページで、「どっちがどのくらい多いの?」といった詳細については後のページで棒グラフを使って出てきます。また、前後半とトータルで分けていますが、もし15分おきなど細かくできるのであれば、折れ線グラフはかなりゲームの流れを把握する上でわかりやすいかなと思います。Wyscoutがそんな感じですね。
2 パスの詳細
次はパスにフォーカスしたページです。

トータルのパス成功数とパス精度、ショートパス、ロングボールの成功数、精度、そして全体のパス数におけるショートパス、ロングボールのしめる割合といった内容です。
棒グラフはそれぞれ前後半別のもので、トータルの数も入れちゃうと割合のところは大丈夫ですが総数のところがとんでもないことになるので前後半別という形になっています。
3 パスの詳細の続き
前のページではショートパスとロングボールにざっくりと分けましたが、このページでは「どんなパスだったんだい?」というところにフォーカスしています。正直、変えたいところが多いですが。

ショートパスは、ラインを越えるパス、DFラインを越えるパス、降りてきてレイオフのやつ(set back)、その他です。その他が黄色ですが、その他が多過ぎます。バックパスという項目を入れれば、ちょうどいい感じになりそうかなという雰囲気を醸し出しています。降りてきてレイオフは自チームにおいてかなり重要なプレーなので項目に入れましたが、正直対戦相手のレイオフの数なんて興味ないですよね。かなりひどいことになっています。あの時の自分を殴ってやりたいです。なかなか変更を加えづらい作りのテンプレを作ってしまったのも反省点ですが。とりあえず、なーなーになっているページです。
ロングボールも、背後、サイドチェンジ、その他の項目ですが、もう一つ「ターゲット」みたいな項目を入れたいです。結構ロングボールが背後まで届かずに手前で競り合いみたいな形になることが多いので、それも入れてあげないと「その他」が多くなり過ぎます。反省点です。
4 シュートの詳細
次はシュートの詳細です。

シュート数の円グラフは最初のページのやつです。次に、枠内、枠外、ブロックされたシュートの割合を表にしています。あ、さっきまでの例で出てきた試合では対戦相手のシュート数が0だったので違う試合になっています。これも、ランダムの試合のデータを入れることでこれを見たウェールズサッカー界の重鎮に分析されることを防ぐ狙いがあります。ぐへへ。そして、最後はシュートマップです。完全手作業です。これを自動化するのは無理です。そもそもやり方がわかりません。
5 クロスの詳細
次にクロスについてです。

特にこれといって何か特別なことはありませんが、強いていえば低いクロスの本数とかは円グラフにすれば視覚的にもわかりやすかったかなーと思います。全体のクロス数のうちこのくらいの割合で低いクロスだったのかーみたいな。あと、クロスのマップも手作業です。こないだは51本クロスがあって死にかけました。あと、セットプレーのクロスはどうするんだ問題もありますが、それはまた後ほど。
6 ファイナルサード侵入について
次に、ファイナルサードへの侵入についてです。というより、どのエリアを使ったか、という感じですが。

そのエリアに侵入した回数の合計をカウントしているので、隣同士のエリアでパス交換した時やちょっと入ってすぐ出た場合などはなるべくカウントしないようにしています。ちゃんとそのエリアでプレーしたぞ、という場合のみカウントしています。そもそも、芝生が綺麗に刈れていて、ラインも見やすいみたいなピッチは稀で、基本的に画角も酷くて遠くが見にくかったりするような中での分析なので、だいたいの感じでやってます。あとこれも、セットプレーの時どうするの問題があります。
7 ボール回収エリアについて
チーム全体に関する最後のデータはボールを奪えたエリアについてです。スペースの関係上試合トータルのデータはなくて、前後半だけになっています。というか、レイアウトもめちゃくちゃで嫌いです。

ボールを奪えた、の基準は相手ボールを奪ってマイボールにしてプレーできた、というものなので、タックルでマイボールのスローインにしたり、インターセプトしたけど外に出ちゃったり、という場合は含まれていません。某ウェールズU16天才アナリストがインターセプトしたけどボールが外に出ちゃった時とかは「インターベンション」という名前で分けているというお得な情報を教えてくれました。とはいえ、今回のこのデータから「どこでボールを奪えて攻撃に繋げられたか」を知りたいので、とりあえず完全にボールを奪い切った時のみのカウントでやってます。
8 個人スタッツ
レポートの締めは個人スタッツです。

まあ、基本的なスタッツと、個人のシュートとクロスのマップがあるくらいです。以上です。今のとこ合計で16ページのレポートです。
どうやってるの?
さて、実物を見てもらったので次はどうやって作るねん、というところと自分が苦労したところとかを書き連ねていきます。
まず、基本的な考えは「データをエクセルに入れたら勝手に計算されたり指定された場所にデータが入力される」というものです。いったん、エクセルシートのスクショを見せます。

見にくいですが、エクセルの上段の赤枠にレポートに表示したいところ(印刷の時にページレイアウト指定で調整)、青枠に実際のデータをコピペ、緑のところで必要な計算をするところ、といった感じになっています。
作りとしては、青いところにデータをインポートすれば、対応するセルにそのまま反映されたり、計算されたりしてどうにかこうにかなるという仕組みです。とはいえ、中には計算が複雑になるところもあるので、一回計算したやつが緑の枠のところに反映されて、さらにもう一回計算されてレポートのところに反映されるという感じです。なので、一個でもセルがずれれば崩壊します。非常に脆いです。
・苦労ポイント①
そもそもインポートするときのデータがぐちゃぐちゃです。例えば、データをエクスポートしたときに、基本アルファベット順になるので「Pass」と「Successful Pass」がかけ離れたところにいてわかりづらいのです。なので「1 Pass」「2 Successful Pass」というように調整しましたが、どうやら文字列上だと1の次は10,11,12と続いていき、19の次に2,20,21と続いていくそうなのです。なので「01 Pass」「02 Successful Pass」というふうにどうにかしました。このくらいの調整は序の口です。あと、いったん青枠にインポートする前に、別のシートで選手の番号を入れ替えたりとかもしますとりあえず、決まったセルに決まった情報がないといけないので、うまいこと調整する必要があります。
・苦労ポイント②
割合の計算の時、0で割る形になるとエラーが起きます。最初はA1/B1のような簡単な計算にしていましたが、B1が0だった時は0%という表示にしてもらうため、IFERROR(A1/B1,”0%”)というかっこいい計算に変更しました。特に、個人スタッツクロス成功率などは、そもそもクロスを上げない選手も多いため、エラーが多発しました。
・苦労ポイント③
セットプレーの扱いも曲者です。全然PA内に侵入できなくても、コーナーやフリーキックから一発で侵入できちゃったり、とかもあります。しかし、ファイナルサード侵入のデータやクロスやシュートマップで知りたいことは、オープンプレーにおいてどの程度崩せていたか、ゴールに迫れていたか、という部分なので、セットプレーを入れると変になります。なので、次にレポートではセットプレーのページを作っちゃおうと思います。何かいいアイデアあったら教えてください。
・苦労ポイント④
データを追加したりするのがめんどいということです。ガチガチにセルが固定されているので、何か付け加えようとすると変えなければいけないところが多過ぎます。困ったものです。
・苦労ポイント⑤
きつい。
まとめ
今後はもっとデータをうまく使えたらなーと切実に思います。楽しいですし。データは量がものを言うので、例えば数試合終わったとに比較したやつを作ってみるとかできたらなと思っています。レポートにこれまでの試合の平均とかを入れたかったのですが、過去の試合のデータを反映させるとなると、異なるシート間での計算が多発するので、なかなかにめんどくさいです。なので、過去のデータを効率的に蓄積するようなものは作れていないので、その辺りは課題です。あとは15分刻みとか、もっと時系列的な要素も増やしたいです。やり方は簡単です。単純に15分おきに毎回データを出せばいいわけなので。でも、テンプレを作り終えるのに1ヶ月はかかると思います。量がえぐいです。
とはいえ、個人的には一つ大枠としてデータレポートが作れたのでよかったです。あとは試合一つずつでも新しい要素を追加できればなという感じです。監督にFucking Wizardという謎の褒め言葉をいただいたので満足です。それならお金をください、と言える強い男になりたいです。