読者です 読者をやめる 読者になる 読者になる

300億円欲しい

メジャーリーグのデータ解析します

NBAのデータ分析がしたい(データ準備編)

はじめに

この記事は、R advent calendar 2016 12/18 の担当分です。

qiita.com

ですが、Rとかクリスマスとか、どうでもいいのです。NBAを観ましょうNBA

12月26日の朝4時30分から、キャバリアーズvsウォリアーズの試合があるのです。

watch.nba.com

最近はこの試合を楽しみに生きています。寂しくないです。

2015-2016年シーズンファイナルの激闘は、みなさんの記憶にも新しいはずです。

最終第7戦の最後まで目が離せない、最高の戦いでした。

www.nba.co.jp

今年はウォリアーズに、2013-2014シーズンMVPであるケビン・デュラントが加わりました。

ステファン・カリー、クレイ・トンプソン、ドレイモンド・グリーンとデュラントのオールスター選手4人が所属しており、

史上最強の呼び声も高いです。12月17日現在で23勝4敗、ウェスタンで1位です。

faknowledge.info

一方キャバリアーズは、昨年パッとしなかったケビン・ラブの調子が良く、

レブロン・ジェームズ、カイリー・アービングと共にBIG3で立ち向かうことができそうです。

12月17日現在で18勝6敗、イースタンで1位です。

興奮してきました。NBAのデータ分析しましょう。

NBAのシーズンデータ

まずはNBAについてどのようなデータが取得できるか、調べてみました。

シーズンの選手別成績は、SportsAnalyticsパッケージの関数を使って取得できます。

library(dplyr)
library(SportsAnalytics)
## データの取得
nbadata <-  data.frame()
for (year in 0:15){
  ## シーズンを指定するための引数を作る
  ## 2015-2016シーズンだったら "15-16"
  fetch.nbadata.arg <- paste(
    sprintf("%02d", year),
    sprintf("%02d", year+1),
    sep="-"
  )
  ## データの取得
  nbadata.year <- 
    fetch_NBAPlayerStatistics(fetch.nbadata.arg)
  ## シーズンを表す列を作る
  nbadata.year$Year <- 2000 + year
  ## 結合する
  nbadata <-
    rbind(nbadata, nbadata.year)
}
## 内容確認
> nbadata %>% names
 [1] "League"              "Name"                "Team"                "Position"           
 [5] "GamesPlayed"         "TotalMinutesPlayed"  "FieldGoalsMade"      "FieldGoalsAttempted"
 [9] "ThreesMade"          "ThreesAttempted"     "FreeThrowsMade"      "FreeThrowsAttempted"
[13] "OffensiveRebounds"   "TotalRebounds"       "Assists"             "Steals"             
[17] "Turnovers"           "Blocks"              "PersonalFouls"       "Disqualifications"  
[21] "TotalPoints"         "Technicals"          "Ejections"           "FlagrantFouls"      
[25] "GamesStarted"        "Year"  

総得点の推移

シーズン別の総得点を集計してみます。

nbadata <- read.csv("nbadata_2015_2016.csv")

library(ggplot2)
## 総得点
nbadata.points <- 
  nbadata %>% 
  group_by(Year) %>% 
  summarise(Points = sum(TotalPoints))

## 総得点の可視化
nbadata.points %>% 
  ggplot(aes(x = Year, y = Points)) + 
  geom_line() + 
  geom_point() + 
  ggtitle("Total Points")

f:id:gg_hatano:20161218111111p:plain

NBAは1シーズン82試合なのですが、2011-2012シーズンは66試合しか行われませんでした。

その影響で、シーズン総得点は2011年に落ち込んでいます。

しかし、全体として得点は増加傾向にあります。

オフェンスの効率が上がっているのか、ディフェンス力が低下しているのか。

今回は、オフェンスに注目してみます。

3ポイントシュートの成功率、成功数

昨今、色々なチームがウォリアーズの真似をしているのか、3ポイントシュートの数が増えている気がします。

最近も、ロケッツが1試合で24本の3ポイントが決め、歴代記録が更新されました。

www.nba.co.jp

そこで、確認のために、3ポイントシュートの成功率、成功数の推移を調べてみます。

## 3ポイントの集計
nbadata.threepoints <-
  nbadata %>% 
  group_by(Year) %>% 
  summarise(ThreesAttempted = sum(ThreesAttempted), 
            ThreesMade = sum(ThreesMade))

## 3ポイントの成功率
nbadata.threepoints %>% 
  mutate(ThreesRate = ThreesMade / ThreesAttempted) %>% 
  ggplot(aes(x = Year, y = ThreesRate)) + 
  geom_line() + 
  geom_point() + 
  ggtitle("Three Point Shot (Rate)")

f:id:gg_hatano:20161218111130p:plain

## 3ポイントの成功数
nbadata.threepoints %>% 
  ggplot(aes(x = Year, y = ThreesMade)) + 
  geom_line() + 
  geom_point() + 
  ggtitle("Three Point Shot (Made)")

f:id:gg_hatano:20161218111026p:plain

3ポイントの成功数は、増加傾向にありそうです。

また、3ポイントの成功率は、2015-2016シーズンには増加しています。

闇雲に3ポイントを狙っているのではない、ということでしょう。3ポイントは得点力向上に寄与していそうです。

NBAのplay-by-play データ

次は、シーズンのデータではなく、もっと細かい、試合中のデータも扱いたいです 。

ただ、バスケでそれができるでしょうか。

状態変化が離散的であるスポーツは、データが作りやすそうです。

例えば、野球のデータは、80年分くらいが公開されています。

gg-hogehoge.hatenablog.com

しかし、連続的に変化するバスケの試合を表現するようなデータは、ちゃんとお金を払わないと使えなさそう...

探してみたら、ありました。

なんと、試合中の各時刻における全選手の座標を取得することができます。

library(RCurl)
library(jsonlite)
## NBA_SportVUをクローンします。
## system("git clone https://github.com/rajshah4/NBA_SportVu")
source("./NBA_SportVu/_functions.R")

ここを参考にしながら、 昨年の12/24の、キャバリアーズvsウォリアーズの試合データを取得してみました。

Rで扱いやすいように、dataframeにします。

## all.movements <- sportvu_convert_json("../data/0021500438.json")

1試合分で13列256万行。すごい。220MBありました。内容を見てみます。

all.movements <- read.csv("movements.csv")
all.movements %>% names
 [1] "X"          "player_id"  "lastname"   "firstname"  "jersey"     "position"   "team_id"   
 [8] "x_loc"      "y_loc"      "radius"     "game_clock" "shot_clock" "quarter"    "event.id"  

各時刻(0.04秒刻み?)で、コート上の全選手とボールの位置情報(x_loc, y_loc)がわかります。

...すごそう...

一旦、プレイを可視化してみます。

4Q3:30前後の、レブロンジェームズのダンクまでの動きを、プロットしてみます。動画だと、このプレイです。

stats.nba.com

サイドからセンターにドリブルで移動、そこからドライブインしてダンク、という動きでした。

## データの抽出
movements.493.lebron <- 
  all.movements %>% 
  filter(lastname == "James") %>% 
  filter(event.id == 493) 
## 可視化(y座標は、ビデオの向きに合わせて調整する)
movements.493.lebron %>% 
  ggplot(aes(x = x_loc, y= 50-y_loc, group = lastname)) + 
  geom_path(aes(color = game_clock)) + 
  ylim(c(0,50)) + 
  ylab("y_loc")

f:id:gg_hatano:20161218110837p:plain

すごい!ちゃんとできています。

総移動距離

座標が取れているので、色々なことが分かりそうです。

例えば、各選手が1試合でどれくらい移動したのか、見てみましょう。

## 総移動距離の計算
data.travelDist <- 
  all.movements %>% 
  group_by(firstname, lastname) %>% 
  summarise(totalDist = travelDist(x_loc, y_loc))
 
## kmに調整して、上位10人を出す
data.travelDist %>% 
  mutate(totalDist_km = totalDist * 30 / 100 / 1000) %>%
  select(-totalDist) %>% 
  arrange(desc(totalDist_km)) %>% 
  head(10)

## 上位10人
        lastname    firstname[f:id:gg_hatano:20161218110837p:plain]    totalDist_km
1         NA        ball     8.711633
2      Kevin        Love     4.896590
3     LeBron       James     4.668445
4   Draymond       Green     4.631822
5    Stephen       Curry     4.534497
6       Klay    Thompson     4.498305
7    Matthew Dellavedova     4.075169
8       Iman    Shumpert     3.820774
9      Andre    Iguodala     3.736349
10   Tristan    Thompson     3.676420

...ボールにもセンサーがついていたのですね。

ボールの総移動距離は8.7km。ケビンラブは4.9kmも移動した、とのことでした。

おわりに

今年のお正月はNBAのデータで遊びましょう!

ところでこの記事は、R advent calendar 2016 12/18 の担当分でした。

qiita.com

明日は@siero5335さんの「森をさまよう」です。

qiita.com

...なんでしょう。怖い話でしょうか。楽しみですね。

以上です。

Oracle Master 12c Silver合格しました

はじめに

gg-hogehoge.hatenablog.com

あれから2ヶ月経ちまして、なんとか合格しました。

合格点67%のところを67%。ちょうどでした。

対策

受験を延期して、ソフトバンクから白い対策本が出版されるのを待つ方がいいと思います。

僕は何をしたらいいのか分からなすぎて、自転車を乗り回して筋トレをしたら合格できました。

みなさんも自転車に乗りましょう。

文句

3月に受験した時は2セクションあったのですが、今回は1セクションしかありませんでした。

試験形式変更のアナウンス、あったのかな。

試験問題内容も、3月の時と全然違いました。

expdpでダンプファイルの名前が被っていたらどうなるか?知らんがな。

おわりに

Goldまで頑張れる気がしません。これでOracleの試験は一区切りにします。

そろそろデータ分析します。NBAのデータをいじります。

以上です。

追記

2016年5月に合格ライン変更がありますよ、というニュースがありました。

2016年2月に。そんなん見ないよ...

新着ニュース | Oracle University

[再受験無料だから] Oracle Master 12c Silverの情報を共有します [悔しくない]

はじめに

Oracle Master 12c Silverで落ちました... 合格ライン67%のところ、59%でした。

悔しいので、得た知見を整理して共有します。

...3/31までは、Oracleの無料再受験キャンペーン期間なのですよ。

落ちても、もう1回は無料で受験できます。今回は様子見の受験だったのです。計画通りです。計画通り。

Oracle 12c Silver (正式名称はOracle Database 12c: Installation and Administration)とは

Oracle 11g Silver のバージョンが上がったOracle 12cのSilverに対応するのが、「Oracle Database 12c: Installation and Administration」です。

便宜的にOracle 12c Silverと呼ばれています。

12c Silverについてググってみると、試験のバージョンが12cになってから、問題に関してほとんど情報が流れていません。

"Oracle 12c Bronze 取りました!"といった投稿のあるブログは、ちらほら見られます

"次はSilver!大変そうだけど頑張ります!"と書いてあるのですが、その後は全く音沙汰がなかったり....

みんな闇に呑まれたのでしょうか...

とにかく、私は受験してきました。落ちましたけど。

次は何とかなると思っています。

今回の敗因は、試験範囲を満遍なく勉強したこと、だと思っています。

12c Silver 試験内容

12c Silverは2セクションから成ります。合わせて150分です。

セクション1は20問。ここは簡単です。セクション2は75問。ここが大変。

両セクションで、それぞれ正答率67%を超えていれば、合格です。

セクションごとに分けて正答率が計算されるため、セクション1で頑張っても、セクション2の正答率が上がらないことが辛いところです。

問題構成について。

後半のセクションは、Oracle Database 12cのインストールやアップデート、さらに12cの新機能についての問題が多かった、印象があります。

私は、11gまでの問題と同様、範囲である全分野からそれなりに満遍なく出題されるのだろう....と考えて、広く(浅めに)学習しましたが、

ここでやられました。インストールやアップデートと12cの変更点についてしつこく聞かれました。

結果、合格点に届かず。

12c Silver試験の正式名称は、Oracle Installation and Administration ですからね。

インストール周りの知識を聞くよ!と言っているようなものです。

DBA全般の知識が問われる11gまでの試験とは毛色が異なる、という点が、12c Silverの重要な点だと勝手に思っています。

試験対策方法

対策1 Crammedia

対策方法について。

セクション1と、セクション2の3割くらいの問題については、Crammediaで対策できると思います。

クラムメディア | Oracle 1Z0-062 資格問題集 - Oracle 12C Silver 問題集

本番と似たような形式で練習できます。

Crammediaに1ヶ月分の利用料である3000円を払って、

収録されている166問の問題をpdfで全部出力して取り組む...でなんとかなると思います。

ただ、提供されている解答が頻繁に間違っていたり、「2つ選べ」と言われたので2つ選んだら正解は3つだった、ということがあります(2016年3月26日現在)。

精神力が問われます。有償デバッグです。

しかし、それ以上の価値はあると思います。12c対応の良い問題集が他にありませんし。

対策2 11g Silverの対策本 (白本)

この11g Silverの対策本(通称:白本)も便利でした。

【オラクル認定資格試験対策書】ORACLE MASTER Silver[Silver DBA11g](試験番号:1Z0-052)完全詳解+精選問題集 (オラクルマスタースタディガイド)

【オラクル認定資格試験対策書】ORACLE MASTER Silver[Silver DBA11g](試験番号:1Z0-052)完全詳解+精選問題集 (オラクルマスタースタディガイド)

  • 作者: エディフィストラーニング株式会社,鈴木佐和,飯室美紀,岡野友紀,西昭彦
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2011/09/01
  • メディア: 単行本
  • 購入: 2人 クリック: 5回
  • この商品を含むブログ (5件) を見る



私は、Crammediaの問題で分からないところを、11gSilver白本で調べる、という学習方式を取りました。

ただ、11gから12cにアップデートした際の変更点には注意が必要です。LREGとかunlimited tablespaceとか。

12cの変更点まとめ:Oracle Databaseセキュリティ・ガイドのこのリリースの変更

11g Silverの対策本には黒い本もありますが、

徹底攻略ORACLE MASTER Silver DBA11g教科書[1Z0-052]対応 (ITプロ/ITエンジニアのための徹底攻略)

徹底攻略ORACLE MASTER Silver DBA11g教科書[1Z0-052]対応 (ITプロ/ITエンジニアのための徹底攻略)


白のほうがいいと思います。技術解説と問題集がセットになっている分安いですし、内容も充実しています。

対策3 12c Silver の対策本

2016年3月11日に、待ちに待った12c Silver対策本が出版されました。

オラクルマスター教科書 Silver Oracle Database 12c

オラクルマスター教科書 Silver Oracle Database 12c

収録されている問題は...対策本としては不十分に思えます。オススメ、というわけではありません。

amazonのレビューにも書いてありますが、この本だけでは厳しいです。

しかし、12cで新出の分野については、この本を頼る他ありません。

特に、割かれているページ数は少ないですが、テキスト第18章から第20章の内容(インストール関連)は、重点的に覚えるといいと思います。

まとめ

Oracle Master 12c silverは、出題傾向が11gまでとは全く異なります。

12cの新機能と変更点、特にインストールやアップデートについて、重点的に学習して臨むといいかな、と思います。

それ以外は、変更点に気をつけながら11gの白本で対策しましょう。

12cの白本、早く出ないかなあ。

あー悔しい...

以上です。

追記

合格しました!!
gg-hogehoge.hatenablog.com

最も勝利に貢献した選手は誰だったのか 2015年メジャーリーグのデータ分析

R セイバーメトリクス 野球

はじめに 野球の勝負強さ

「9回表の2アウト、同点の場面で打ったホームラン」

「9回表の2アウト、10点リードの場面で打ったホームラン」

この2つは、選手の個人成績としては同じです。

記録上は同じ、ホームラン1本で1点取った、となります。

しかし、勝利への貢献という意味では、全く価値が異なります。

チームを勝利に近づけるようなプレイが重要ですからね。

以下、参考記事です。

巨人村田の"死体蹴り"が有名です。村田は大事な場面で打たないんですよね。

プロ野球 死体蹴り名人ランキングwwwwwwwwwwww : なんJ(まとめては)いかんのか?
【死体蹴り】 ヤクルト打線大爆発、9回表に11点wwwwww : なんJ(まとめては)いかんのか?

勝利への貢献度合いから打席を見ることで、

勝負強さや打席結果の価値を評価してみたいと思いました。

勝率の変動を調べてみる

過去に、こういう記事を書きました。

gg-hogehoge.hatenablog.com

巨人の勝率を上げたい (スクレイピングとデータ集計)

過去の試合結果データを利用して、試合状況から勝率を計算できるようにした、というものです。

こんな感じです。

打席ごとに勝率が変化します。

先のスライド、19ページ目にある、巨人の勝率変化のイメージです。

f:id:gg_hatano:20151220085830p:plain

ここで、勝率の変動の大きさで打席結果の価値を評価してみればいい、

というアイデアがあります。

2015年メジャーリーグの全試合の全打席で計算してみました。

## 2015年メジャーリーグで、最も勝利に貢献した打席

2015年のメジャーリーグの2429試合で発生した、全189,591イベントに対して、勝率変動を調べました。

その中で、最も勝率変動が大きかった打席と、その試合を挙げてみます。

勝率変動の絶対値をとって、試合ごとにその最大値を調べてみました。

そして、その最大値が大きかった上位5試合です。

GAME_ID 勝率変動の最大値
1 CHN201507270 0.9145
2 TEX201505310 0.8273
3 TOR201506090 0.8100
4 COL201506022 0.7940
5 ANA201509130 0.7916

GAME_IDが分かり辛いですが、勝率変動が最大だったのは、7月27日のこの試合です。

live.baseball.yahoo.co.jp

試合中の勝率変動を見てみましょう。

f:id:gg_hatano:20151220080328p:plain

最後の打席が、2015年の勝率変動最大打席でした。

live.baseball.yahoo.co.jp

1点ビハインドの9回裏、2アウト1塁から、ルーキーのクリス・ブライアントがサヨナラ2ランホームランを打ちました。

勝率8.5%の場面から起死回生でした。

シーズン通算の勝率変動

次に、2015年のシーズンを通じて、選手ごとに勝率を何%上げたかを調べてみました。

もっとも勝利に貢献した選手が分かります。上位10人です。

ID 勝率変動(%) 選手名
1 vottj001 6.29 Joey Votto
2 goldp001 5.90 Paul Goldschmidt
3 donaj001 5.83 Josh Donaldson
4 rizza001 5.81 Anthony Rizzo
5 troum001 4.84 Mike Trout
6 carpm002 4.73 Matt Carpenter
7 harpb003 4.69 Bryce Harper
8 mccua001 4.59 Andrew McCutchen
9 morem001 4.06 Mitch Moreland
10 davic003 4.06 Chris Davis


1位はジョーイ・ボットーでした。

baseball.yahoo.co.jp

2015年の成績は、打率.314、29本塁打、80打点。

それぞれ、突出した成績ではありません。物足りないです。

しかし、勝利貢献度合い、という形で高く評価することが出来ました。

こういう選手に光を当てていきたいですね。試合を決める選手。

他の勝負強さ指標と比べてみます。

例えば、打点。

打点ランキングの順位と勝利貢献度合いランキングの順位をプロットしてみました。

f:id:gg_hatano:20151220185630p:plain

結構違いますね。

まとめ

勝率の変動を利用して、打席や試合を評価してみました。

セイバーメトリクスでは、WPAと呼ばれる指標です。

チームの勝利に貢献した選手を定量的に評価できて面白いです。

コレを利用すれば、ある試合のMVPを自動的に決められますね。

試合の勝率貢献度が最大の選手を選べばいいわけですし。

展望1 日本プロ野球

日本プロ野球では、適切なデータが用意できませんでした。

打席単位のデータが欲しいです。

展望2 野球以外のスポーツ

試合状況から勝率を推定できれば、同様の手法が他のスポーツでも適用できます。

バスケとか面白そうですね。

例えば、残り10分で何点差であれば勝率95%で安心できる、といったような形で、

いわゆる「セーフティリード」を定量的に主張することが出来るかもしれません。

おわりに

この記事は、R Advent Calendar 2015、12月21日担当分でした。

qiita.com

また、今回の分析に際して利用したコードとデータは、ここにあります。

github.com

Advent Calendar 2015, 12月22日の担当は@kazutanさんです。

twitter.com

予告によれば、leafletという、地図上でデータを可視化するライブラリを利用した記事だそうです。

楽しみですね。

以上です。

中日の大島は本当にセカンドゴロ製造機なのか (2015年の打席結果データを作りました)

野球 R

はじめに

元ネタ。セカンドゴロ製造機として名高い、中日の大島選手に関する記事です。

blog.livedoor.jp

手でデータを集計しているようです。大変そうです。

そこで私は、プログラムを書いて全自動化してみました。

ついでに、大島選手だけではなく全選手の打席結果をまとめたデータをcsvで作ってみました。

2015年 打席結果データ作りました

データはこちら。2015年の全試合の打席結果.csvが入っています。

2015年打席結果.csv: 試合ID, チーム名, ホームかアウェイか, イニング, 選手名, 打席結果, イニング内の打席順, というデータです。 · GitHub

約65000行あります。気をつけて下さい。

yahoo一球速報の試合結果ページを1試合ずつ整理して作りました。

打席結果が表になっているので、ここをいい感じにまとめるだけです。

作ったデータの中身を紹介します。

先頭の6行。

試合ID チーム ホーム_アウェイ 選手 結果 結果番号
1 2015032701 巨人 home 1 坂本 勇人 左安 1
2 2015032701 巨人 home 1 井端 弘和 遊ゴロ 2
3 2015032701 巨人 home 1 長野 久義 中2 3
4 2015032701 巨人 home 1 阿部 慎之助 捕邪飛 4
5 2015032701 巨人 home 1 村田 修一 中飛 5
6 2015032701 巨人 home 2 坂本 勇人 右飛 1

1行目は、2015年3月27日の試合、巨人がホームで、1回に坂本が先頭でレフトにヒットを打った...

...といったものです。

このように、打席の情報が1行に入ったデータとなっています。

大島はセカンドゴロ製造機なのか

中日の大島選手の打席結果を集計してみました。

##   result count
##    (chr) (int)
## 1 二ゴロ    85
## 2   左飛    48
## 3 遊ゴロ    47
## 4 空三振    45
## 5   中安    39
## 6   四球    38

とりあえず棒グラフにしてみました。

f:id:gg_hatano:20151031202710j:plain

元記事の数字とは一致しています。

大島選手の打席結果では、セカンドゴロの数が最も多かったです。

他の選手と比べるとどうでしょうか。

200打席以上の選手で、セカンドゴロ率を調べてみました。

セカンドゴロ率ランキング、top10人がこちらです。

チーム 選手 結果 回数 打数 割合
1 ロッテ 岡田 幸文 二ゴロ 30 208 0.1442
2 ソフトバンク 髙谷 裕亮 二ゴロ 29 208 0.1394
3 中日 大島 洋平 二ゴロ 84 608 0.1382
4 楽天 後藤 光尊 二ゴロ 58 440 0.1318
5 巨人 アンダーソン 二ゴロ 35 269 0.1301
6 楽天 藤田 一也 二ゴロ 57 447 0.1275
7 巨人 立岡 宗一郎 二ゴロ 50 397 0.1259
8 中日 森野 将彦 二ゴロ 31 248 0.1250
9 楽天 銀次 二ゴロ 41 354 0.1158
10 ヤクルト 雄平 二ゴロ 71 616 0.1153
左打ちのノーパワー系バッターばかりです。アンダーソン以外。

大島は3位でした。ただ、打席数は多いです。

セカンドゴロ製造機と認定してよさそうです。

できなかったこと

打席結果データで、イニング内の打席結果の順番が上手く取れていません。

例えば、先ほどのデータで、6行目に坂本が来ています。

これは、坂本が2回の先頭打者という意味ではありません。

6,7,8,9番の打席の後に坂本の打席...だったのですが、この順番が反映できまていせん。

ちょっと面倒なので、後回しにします。

また、塁の状況が分かると面白いのですが、取得できていません。

なので、例えば、得点圏打率の計算は出来ません。

おわりに

みなさんもExcelとかで遊んで下さい。

以上です。

追記1 (2015年10月31日)

今回のデータには、クライマックスシリーズ日本シリーズの試合も含まれています。

なので、集計結果には、シーズン通算成績とは異なる数字が現れています。

追記2 (2015年10月31日)

打者1順の時の打撃結果が正しく反映出来ていませんでした。

データを手で直しました。

Oracle Master 12c BronzeのDBA試験は思ったより難しくなかった

データベース Oracle

はじめに

Oracle Master 12c Bronze, DBA試験もなんとか合格できました。

情報共有しておきます。

使った本1

www.amazon.co.jp

これを買っておけば大体なんとかなると思います。

収録されている模擬試験も、本番と同じような形式で助かります。

使った本2

www.amazon.co.jp

これも良い練習になりました。

問題は少し易しい印象です。知識の確認にはなります。

このシリーズSQLの方は酷かった(過去記事参照、絶対に許さない)

gg-hogehoge.hatenablog.com

のですが、DBAの方は大丈夫です。

おわりに

上記2冊ともkindleで買えるので、iPadに突っ込んで勉強してました。

いい時代です。

これでOracle MasterのBronzeが取れました。次はSilverです。

...12cのSilverに関しては、情報が少ないです。参考書すら見つかりません。どうしよう。

Silverの上のGoldだったら本があるのに、

www.amazon.co.jp

Silverだけないのです。どういうことだ。

いい本があったら、どなたか教えて下さい。

以上です。

追記(2016/03/21)

Silverの問題集が2016年3月10日に発売されました!!!

オラクルマスター教科書 Silver Oracle Database 12c

オラクルマスター教科書 Silver Oracle Database 12c

イチローと松井のどちらが凄いのか (Rでセイバーメトリクス)

R セイバーメトリクス 野球

はじめに

第51回、東京R勉強会で発表してきました。

atnd.org

内容

発表に使ったスライドです。

手元でセイバーメトリクスができるよ、という話です。

野球データの取得から分析まで、自分のパソコンで簡単にできて楽しいです。

www.slideshare.net

スライド46枚目、「ホームランの価値」というところの数字が間違っています。

1.44点のところを矢印で指しながら「1.41点」とコメントしています。完全にアホです。ごめんなさい。

ソースコードはここにあります。

野球のシミュレータが他の環境で動くかどうかは...分かりません。

github.com

次にやること

何しようかな。

以上です。

追記 (2015/10/11)

別の勉強会で、野球データ分析をやられている方の発表もありました

www.slideshare.net

カッコイイですね