About connecting the dots.

data science related trivial things

kaggleで予測モデルを構築してみた (1) - kaggleって何?

データ解析に適したデータというのは案外世の中にはないもので,官公庁データやらなんやらをみても,エクセルにまとめられた集計表がポンッとおいてあるだけだったりして,しょんぼりすることが多いですね.

そんなおり,昨年のRのアドベントカレンダーでKaggleで予測モデルを作ってみよう!(Rアドベントカレンダー) - iAnalysis 〜おとうさんの解析日記〜という記事をみつけたので,試してみました.このKaggle: making data science a sportというサイト,まさにデータマイニングをするためのデータを提供しているサイトだということで,予測モデルに適したデータがたくさん公開されています.

なんか企業が協賛して賞金が出たりもするみたいなんですが,とりあえずは練習用のデータというのがあるので,みてみます.

Description - Titanic: Machine Learning from Disaster - Kaggle

練習用課題は,あのタイタニックの乗客データが与えられて,どの乗客が生存してどの乗客がなくなったかを,性別とか年齢とか運賃とか客室のグレードとか乗った港とかの条件から予測するものということだそうです.

概要はページに書いてあるので,ざっと読んでデータをダウンロードしましょう.ページ真ん中上側のGet the Dataをクリックすれば,ダウンロードページに飛びます.いろいろデータの種類がありますが,基本的にはtrainとtestの2つのcsvファイルだけダウンロードすれば十分です.train.csvがモデル構築用の練習データで,test.csvでデータの適合度合いをチェックすると,そういうことになるわけですね.

https://www.kaggle.com/c/titanic-gettingStarted/data

ダウンロードしたデータを開いてみるとわかりますが,データの一部が抜けていたり,年齢なのに小数点のものがあったりします.ダウンロードページの説明文に書いてありますが,

Age is in Years; Fractional if Age less than One (1)
If the Age is Estimated, it is in the form xx.5

1歳未満の子どもは少数で表されているとのことです.また,それ以上の年齢でXX.5歳という表記の場合は,その年齢は推定値であるとのことです.またそれ以外にも値が記されていないものもありますが,これは値が不明だということのようです.他の変数にも,いろいろ説明が書かれています.精度の高い予測をするときに,この推定値や空白にどう対応するかが問われるということなんでしょうね.

ということで,今回はサイト説明とデータ入手まで.次はRでのデータ読み込みと簡単なモデル構築を試してみたいと思います.