2016年2月23日火曜日

第64夜 競馬データを分析する技術、方法について(2)

63夜から続く話題である。
▼情報収集
では、最初に何をすべきか、である。
情報の収集である。
実は、この部分が最も時間を要する。
多くの人がここで頓挫する。
表計算ソフトに、11レコードで整然とデータを揃えていく。
1
レコードとは、馬1走分のデータである。
16
頭立ての競走があれば、16行すなわち16レコードである。

競走番号、日付、競馬場名、コース、天候、馬場状態、馬番、着順、馬体重、馬名、騎手名、調教師名、父馬、走破タイム、上がり3ハロンタイム、賞金などを各列に入れる。
また、全馬の誕生日や祖先馬と呼ぶファミリーライン馬の情報も付加している。
不要な要素もあるかもしれないが、いつでも使えるようにとりあえず入れてある。
RDB
を使える人ならば、わたしよりスマートにできるだろうが、わたしは場合、扱いやすさから表計算ソフトに落ち着いた。
1
年分でざっと45,000件のレコードになる。
以前のExcelならこれで手一杯だったので、複数のシートからデータを扱うスキルも必要だったが、現在のExcelなら10年分でも問題ない。
もちろん、専用ソフトでも構わない。
自在に操ることができるものであればいいのだ。

各列に入れたデータは、綺麗に揃えておく。
これができていないと次の分析に進めない。
文字データには注意が必要だ。
例えば、騎手名に略称が混じっていると、同一人物として扱えない。
略称が変わることもある。
蛯名正義騎手は、若い頃エビショウと言われたが、同姓がいた時期があった。
「蛯名正」と「蛯名」「蛯名正義」を同一人物として扱えるように、わたしの場合は数字コードを振っている。
このコードも当時は手作業で進めたので、たいへんであった。

また、走破タイムや日付データも扱いやすいようにしておく。
わたしの場合は、日付はシリアル値を用い、走破タイムは、1/10秒に揃えている。
1
234であれば、83.4秒になるので「834」としている。

ある程度データベースさえ完成すれば、スタートラインに立てる。
ここからは、各自の頭脳戦である。

▼分析、仮説、検証
生データを眺めているだけでも、いろいろなことはわかる。
最初のうちは、フィルタや並べ替え機能でも分析はできるだろう。
ここで仮説を立てていく。
前走1番人気の馬がどうなるか、騎手が代わるとどうなるか、など調べ上げていく。
しばらくすると、データを組み合わせたり、加工したりして分析する必要が出てくる。
例えば走破タイムを時速に直したり(6夜、第7夜参照)、出走日から誕生日を引いて出走時年齢(月齢や日齢)にしたりする。
仮説に一定のメドが立ったら、別のファイルに必要なデータを移して検証する。
わたしの場合、数量化1類を使って予想している。
キーとなる数値は、スピード指数でも速度でもいいが、わたしは賞金や着順によるオリジナル指数を求める。
仮説がどれくらい予想結果を説明できるか調べる。
こうした作業を繰り返すのである。
(SiriusA+B)

ブログ アーカイブ