JRDV.sp

JRDBからJRDVがスピンオフして、しかもいいとこ取りのブログ。

開発

血統は木構造なので

いわゆる、再帰の例題として扱うに適した材料だったりします。
5代血統からクロスを抽出する作業を頼まれたので、どうやってやろうかなと。
汎用性があって運用的に便利なのは、やはりSQLで書いてしまう方法。
どうせ元々のデータがデータベース上にある訳ですからね。

個人的には今まで、そういった血統データには興味が無かったので、そもそものルールが分からん。
という所からスタート。
ルールさえ分かってしまえば、それをコードに落とす作業はそれほど難しくありません。
だって、そのデータの構造的にSQL文で書ける事は確実なので。
きっとプログラム一般で多分難しいのは、ルールをどう設定するか?なのでしょうね。

パズルを解く感じでなかなか楽しめました。

クロスは血統表上に2つ以上同じ馬が出現している、というのが前提。
それを表現するためには1頭の馬の血統表を2組使います。

手順としては続きを読む

位置取りシートA3 テスト版

A3デカイやな!

A3版の位置取りシートを作っているとこ。

t1

文字が大きくなって、追加のデータもあります。
2月を目処にE新聞で公開予定。
まだ手直しは入りますが、ここらで1回テスト版を出してみますね。

→ 1/17京都
比較用に
→ 従来の(成績入り)


A4でプリントしたら無理だなコレ。
でもA3だと結構しっくりきます。
普通の家庭のプリンタではA3はあまり無いと思うので、コンビニのプリンタを利用するというのはアリかなと。
普段「位置取りシート」を見ている方であれば、大体分かるはず。
ざっと説明をしておきますね。
続きを読む

A3デカイやな!

位置取りシートのA3版を作成中。
比較するとこんな。

t1

おっと、ぼーっとしていたせいかな。
騎手・厩舎名と印の場所が・・・間違っているじゃないか!

予定外の2日間の競馬があったせいで、ゴッソリと開発時間が削られてしまいました。
今回の僕の作業担当部分はデータベース、デザイン、コードを書く部分・・・っと、全部ですわ。
このタスク間をグルグルと回すには、どうしてもまとまった時間が必要。
どれか1つだけであれば何かの合間にも割と出来るのだけれども、初期の段階のとりあえず進めていく段階だと分断された時間だと厳しいな。
更には、回りに誰も居ないのがベスト。
と、なると日曜日の夜~月曜日の朝になります。
それが今回代替競馬のせいで無くなってしまった訳で。
困ったものです。

でもでも、競馬終わりからさっきまでで、やっと大枠の部分はOK。
あとはチョットずつ手を入れて行く方針で。

ねむいー。帰ろう。

競馬新聞の作り方

微妙にシリーズ化されているこの記事。
今回も誰の参考にもならないであろう、非常にニッチな内容です。

僕が担当する競馬新聞は近年の物はイラストレーターで作成しております。
ハイブリッド新聞だとデータの量も種類も多いので、イラストレーターを外部からの操作での利用。
もっとデータが少なくて単純な物であればスクリプトを使います。
海外競馬用の馬柱や「外厩」シートはスクリプトでの作成。
JavaScriptでコードを書いてイラストレーター上からの実行ですね。
ただし資料が少ないのが欠点。
エクセルのVBAに関しては検索して見つからない事はほぼありませんが、このイラストレーターをスクリプトで扱う事に関しては世の中あまり関心が無いようです。
頼りになるのはAPIのドキュメントくらいしか存在せずの状況。

さて、今日の作業で少しはまったのがコレ。

t3

馬柱で勝負服を表示する部分。続きを読む

斎藤誠厩舎

についてのデータ変更がございました。
掲示板の文面は以下の通りです。


JRDBデータご利用のみなさまへ

「斎藤誠」調教師の表記について

これまで、「斉藤誠」(さい の字が異なる)の表記でしたが、
正しくは「斎藤誠」です。調教師マスタデータを修正しました。
以降、「斎藤誠」調教師でデータを作成します。
(調教師コード:10396は変わりません。)

JRDBサイト内、過去分において 「斉藤誠」 表記がありますが、
「斎藤誠」と読み替えてください。

また、JRDB競走馬データ、過去分にて、調教師名がありますが、
これは、未だ「斉藤誠」のままです。次回、データ再作成した際に修正されます。
(再作成の準備中です)

そのため、「調教師名」で、集計した場合(GGAで起こり得ます)など、不整合が
発生する場合があります。ご注意ください。

それでは、よろしくお願いします。


「ご注意ください」としながら・・・現在のところ僕が1番マイナスな影響を受けてもうたがな。
とある処理の中にて、Group Byの箇所がありまして、調教師コードと調教師名をセットにしていたため、1つの調教師コードに2つの名前が発生。
というよくあるエラー。
エラー発生だけならまだしも、その後に・・・。あああああ、なかなか腹立たしい。

せっかくなので、斎藤誠厩舎について少し。
続きを読む

JRDV厩舎成績を更新しました

前回の記事にて、要望があった分ですね。
厩舎+騎手成績の着度数を入れました。

騎手成績を表示するには、画面上部の「騎手成績」

t1

もしくは

t2

下にスクロールするとある「騎手別成績」をクリックで。
他の表と同じくヘッダ部分で並び替えが出来ます。

例えば音無厩舎の騎手別成績を開いて、「外」(着外数順)に並び替えると・・・。
主戦の松若風馬騎手は、まあ無難な成績。
北村友一騎手だと芝はダメだこりゃ。
戸崎圭太騎手は勝たないです。
秋山真一郎騎手だと、勝負になりそうな馬には乗らない。
とかね。

でも時間があれば、もう1つ下にある「競走馬成績」も確認しておいて下さい。
昨年の1月以降からの全出走データが入っております。

↑では一見好調に見えるC・ルメール騎手も春以降は全然ダメだし、M・デムーロ騎手も音無厩舎の「しがらき」「天栄」のNF「外厩」はダメだし。
なんて事まで見ておいた方がベターです。

成績詳細データを少し変更しました

騎手、厩舎、外厩、この3つの成績データの画面にて、1番左に連番を振っておきますね。
並び替えをした時に、目視で数を数えたりするのが面倒なので。

あまり使っている方もいないので、ざっとご報告まで。

今週は全然記事を更新していなかったけど

遊んでた訳では無く。
これ作ってた。

t1

土曜日に行われるナッソーS。
マインディングが出走します。
実データを入れながら、前回よりもデザインも変わっております。
今週は主にデータベースとプログラムの方に注力していたため、まだ見える部分はイマイチ。

12の数字が並んでいるのは着度数を入れる予定。
・芝(ダート、AW)成績
・重賞成績
・回り成績
・騎手成績
・重、不良成績
という並び。

まだ文字のスタイル設定が終わっていないので、文字数オーバーの馬が切れてますね・・・。
やや中途半端な状態で週末に突入してしまうのが残念。
あと3日くれればなあ。

Postponedはキングジョージ出走取り消し

って、丁度さっきここまで組んだのに・・・。
異変が見つかった。的な事ですが大事に至らないと良いのですけれども。
あ・・・でも。
マカヒキの凱旋門賞にとってはアレですね。
馬主パワー半端ないな。

1

だったらDartmouth(ダートマス)に頑張って頂きましょうか。
なにせ、馬主名が「The Queen」とエリザベス女王様の持ち馬です。

海外競馬の方はデータ関連はほぼ開発終了。
次は、PDFで新聞にするかビューワにするのか?といったところ。
先にラフで馬柱を組んでみました。
僕の目標はすでに決まっており、海外競馬を知らない方でも多少なりとも自分で判断して馬券を買う、という事が出来るのがゴール。
長年競馬をやっている方であれば、過去の人気と着順、そして今回の人気が分かればソコソコは判断出来るかなとも思います。

そして。
↑のやつを作っているので、まだ暫くの間はブログの記事等は色々と抜けが発生する予定。
プログラムを書くのは、やはり相当に楽しい。

やっぱりちゃんとしたDBの方が便利です

JRDBの各種データをAccessで分析出来るツールがありますが、個人的にはAccessはあまり好きではありません。
昔、まだ普通のJRDB会員だった頃、僕はAccessでは無くSQLサーバーでデータを管理しておりました。
今はカナリ環境も整っており、データをダウンロードしてSQLサーバーにアップするようなツールも結構簡単に作れると思います。

たまに掲示板でも質問が来るような、ランキング系や集計の問題も今のDBであればサブクエリを使わずに実現出来ます。
例えば、1着馬からのタイム差を出すような場合。

海外のレース結果は、1着馬のタイム、以下は各着順の馬身しか発表されません。
2着以下のタイムなぞには興味がねえ、という伝統なのでしょうね。
香港だとキッチリ全て出してくれるので文化の差なのかなと。

今年の英ダービーだとこのように。

着順馬名馬身1馬身2タイム差
1Harzand00
2US Army Ranger11/2 0.3
3Idaho11/40.55
4Wings of Desire5 1.55
5Humphrey Bogart3 2.15
6Red Verdon1 2.35
7Algometer2 2.75
8Cloth Of Stars2 3.15
9Massaat0ハナ3.16
10Across The Stars3 3.76
11Deauville3 4.36
12Ulysses11/44.61
13Biodynamic6 5.81
14Port Douglas7 7.21
15Shogun7 8.61
16Moonlight Magic11 10.81

1つ上の着順との馬身差しか無い時は、自分よりも上の着順の馬身の合計を出して、それを1着馬からのタイム差とする。
みたいな処理が必要になってしまいます。
これをサブクエリ無しで書けるのは本当に便利。

SQL文はシンプルなもんです。

select

tyakujun
,bamei
,basin1
,basin2
,sum(
cast(basin1 as int) * 0.2 +
coalesce( (select sec from m_basin m where m.basin = t.basin2),0)
)
over
(partition by racekey order by tyakujun)

from se t

これをAccessでやろうと思ったら、ウンザリしますわ。

OLAP関数(ウインドウ関数)を使う方が下手なサブクエリを使うよりも最適化されている分処理も早いしね。

単行本
外厩ブラックボックス馬券術

Target用ファイル
「外厩」データ
(無料分)
「外厩」印データ
Target用厩舎ランクCSVファイル
(JRDB会員専用)
今週の重賞
Target用ファイル
ビューワ 3/25・26
土曜日
日曜日
PV: 位置取りビューワ
DV: DV3
mini: JRDV-mini

過去分
2017年 2016年 2015年
記事検索
中の人
当ブログでの「僕」または、一人称は全て飯村公一@JRDBシステム班です。
JRDVを含めWEBアプリ系の開発担当者。
僕直通のメアドです。
iimura.sp半角アットマークgmail.com
半角アットマークを「@」に変えて入力して下さい。

Twitter:@jrdvsp
FaceBook:飯村 公一

こちらでもコンタクトできます。
Live レース結果
最新コメント
サイトへのリンク
【JRDV.SP】のサイトはリンクフリーです。
リンクしていただける場合は、以下のバナーをご利用ください。
コメント欄にでもご連絡頂ければ、このブログでも紹介させて頂きます。


http://blog.jrdvsp.com/



競馬リンク
必要な物はここで全部揃います


JRDBブログの1st


僕の席のとなりにいる人


新感覚


1回にご馳走になる食事
≒僕の1ヶ月分の食費


競馬情報ポータルサイト。


SMARTKEIBA


ストライド競馬新聞


パドチョク


競馬ビッグデータ


競馬サミット


相互リンク

逆転競馬

大阪梅田競馬BAR
『そのままっ!!』



チョットだけ競馬を。

The Lion Sleeps Tonight

没関係啊(*`ω´)



大きい馬券好きの競馬予想



おいなりさん
  • ライブドアブログ