ビッグデータ分析 全日程終了時. 【プロ野球スクレイピング】データを取得する(read.html、to.excel), 【プロ野球スクレイピング】年次データを抽出しExcelに出力 全選手、全年のデータを1つのファイルにまとめる. 選手詳細 ; 打者個人; 投手個人; チーム打者; チーム投手; 選手Map; 成績推移Chart. バレルゾーンは打球速度と打球角度から定義された領域で、このゾーンに入った打球は本塁打など長打になる確率が非常に高くなります。これらのデータは、日本のプロ野球でも記事で目にする機会が多くなっていますね。MLBでは公式サイトでも説明がされていたり、打球速度ランキングなどで楽しめるくらいファンにも浸透してきています。, バレルゾーンのように、データを使って特別な領域を可視化したり、事象の発生する確率を求めて分析したりすることは多くありますが、これを機械学習を使って求めたらどのように表現されるのでしょうか。, 機械学習を使う前に、まずは実際のデータを集計してみましょう。データは「Baseball Savant」のデータ検索から、2018年MLBの打撃データを取得して使います。件数が12万件以上もあるので相当なデータ量ですね。ダウンロードしたCSVには多くのデータ項目がありますが、今回は以下に絞って使っていきます。, データの中身を見てみましょう。横軸に「打球速度」、縦軸に「打球角度」を置いて、本塁打(home_run)がどのような割合で出ているかをグラフにしました。, 本塁打の割合が大きいほど色が濃くなります。だいたい90mph(≒145km/h)あたりから色が付き始め、打球速度(横軸)が大きくなるほど、打球角度(縦軸)の範囲が広がっています。これだけでも大まかな傾向は把握できそうです。, ただ、90~100mphあたりや110mphを超える領域をみると、色がまばらで正確な情報を把握するのが難しくなります。赤い領域にはなんらかの傾向と連続性があるように見えますが、この範囲を求めることはできないのでしょうか。, 機械学習は自前でサーバーや学習環境を準備しなくても、AWSやAzureなどのクラウドサービスを利用して試すことができます。今回はGoogle Cloud Platform(GCP) のAutoMLを使いました。統計学やPythonの知識がなくても、オリジナルでモデルを作成して、実際に利用するところまでいけました。, 使い方の詳細はヘルプや他の紹介サイトに委ねますが、ポイントだけいくつか記載しておきます。, バケットの作成では「Regional」を指定して、場所を「us-central1(アイオワ)」にしないと、データセットにCSVをインポートできませんでした。同じリージョンにしないと取り込みできないようです。, 今回は打球速度と打球角度から、本塁打を判定します。目的変数と説明変数を設定して、「教師あり学習」という手法で学習していきます。, Baseball Savantから取得したデータには「home_run」という列がないので自分で作っておきます。「events」列で「home_run」となっていれば「1」、それ以外には「0」を設定します。, データ量が多くなるほどトレーニングには数時間かかります。どんな精度のモデルができるか、ワクワクしながら待ちましょう。, ただ、無料トライアルではトレーニング時間が長くなると無料枠の消費も気になりますね。注意しましょう。, トレーニングで作成されたモデルの評価には様々な指標があります。指標の説明はさて置き、今回のモデルは精度が97.1%と出ました。なかなか良さそうです。ただ、「AUC PR」が0.757、「F1 スコア」が0.640となっているあたりは、少し気になるところでもあります。, モデルができれば、あとは任意のデータを流し込んで結果を取得できます。早速実行しましょう。結果はこのようになりました。先ほどの実データを緑で重ねて比較してみます。, いかがでしょうか。丸みを帯びた境界ラインがきれいに重なっているように見えます。そして、実データでは評価できなかった、110mph以上の領域も出力されています。ちなみに110mphで本塁打が50%以上になる角度は20~44°と出ました。これはなかなか良い学習結果が得られたのではないでしょうか。, 作成したモデルは、パラメーター(打球速度、打球角度)を渡すと、レスポンス(本塁打の確率)を返してくれます。まさに関数みたいなものですね。実際のプレーデータを渡して結果をみてみましょう。, 例として、MLBエンゼルスの大谷翔平選手が7月7日の前半戦最終試合で、2打席目にレフトへの14号本塁打(看板直撃!)、4打席目にはセンターへの大きな飛球(フライアウト)を放ちました。この2つの打球をモデルに渡して予測してみます。, <大谷翔平選手 2019/7/7> ヘッドショットマーケティング / UVP LastUpdate: 11/6 得失点グラフ. プロ野球データFreak. 今までコードすら書いたこ…, データスタジアムのエンジニア二宮です。 当社でも大小様々なサーバーレスシステムの構築、とりわけAWS Lambdaの利用は増えてきていま…. ©Copyright2020 悟の学習帳.All Rights Reserved. コンテンツ一覧 テーブル. ギックスの本棚 ビッグデータ活用事例 バガボンド 他では見られないプロ野球の詳しいデータを掲載。チーム成績、選手成績。 baseball-data.com. 起業に役立つ戦略知識, INFORMATIONALです。これは標準化への成熟段階へ至らない情報提供という扱いなのです。さきほどの, 「文字列データをダブルクォートで囲む」という規約に関してもRFC4180内では囲んでも囲まなくてもよい(may or may not be enclosed)という表現になっています。RFC4180が, RFC4180内の記述内容も「囲んでも囲まなくてもよい」という表現なのですから、この方言がいかにあいまいなものかがお分かりいただけると思います。, CSVファイルは固定長フォーマットにくらべて再利用性の高いデータフォーマットである, 「一度決定した項目の最大データサイズを後から変更する場合、それまでに作成したプログラムを修正しなければならない。」ということはありません。また「データの長さが項目長に満たなかった場合、右側をスペースで埋める」という必要もありません。, テキストエディタなどでデータを参照した場合の読みやすさや、データを人間が手動で編集した場合間違えてデータを壊しやすい, XMLやJSONなどのフォーマットと比べると遥かに高速にデータを処理することが可能, 第4回 Character-Separated Valuesフォーマット(CSV,TSV,SSVなど)について, 1人目のデータを格納しているのはどの場所か。2人目のデータを格納しているのはどの場所か。, 1人分のデータの中で、順位を格納しているのはどの部分か。同様に氏名は。ホームラン数は?それぞれどの場所に格納されているか。, 一人目の項目は何文字目から何文字目までか?二人目の項目は何文字目から何文字目までか?三人…, 1番目の項目は何文字目から何文字目までか?2番目の項目は何文字目から何文字目までか?3番目の項目は何文字目から何文字目までか?, 何番目の場所の項目は何か?(この場合の例:1番目の項目は順位、2番目の項目は氏名、3番目の項目は本塁打数), ダブルクォートで囲まれた文字列が一つの項目データなので、この中にはカンマ文字や改行文字を記述できる。, すると、「じゃあ、そのデータの中でダブルクォート文字が入っていたらどうなるんだ?」という問題が浮き上がる。, ここでエスケープ文字の登場!ダブルクォート文字1つ「”」をダブルクォート文字2つ「””」でエスケープする。. メディア掲載 過去のデータ - 2018年. プロ野球データFreakより必要なラベルのデータを抽出してデータを揃え、csv形式のファイルで保存します。保存したcsvファイルの名前を baseball.csv としています。 baseball.csv のファイルをjupyter notebookにアップロードしましょう。 自身で演習を行うjupyter notebookと同じフォルダに保存する様 … データ分析用語 ひとりごと クロス集計 プロ野球データフリック . ※出展:日本プロ野球機構オフィシャルサイト・ 歴代最高記録 本塁打 【通算記録】より. データハンドリング thinkaholic|シンカホリック 人月の神話 主にサッカー競技団体向けに営業、コンサルティングを行っております。 横丁のご隠居 データアーティスト データ分析とデータ活用 Copyright © DataStadium Inc., All Rights Reserved. インタビュー Tableau活用術 提供サービスのご紹介 前回(第3回)は、各フォーマットを説明していく第一弾として「フラットフォーマット」について説明しました。今回は第二弾としてCSVフォーマットについて説明します。これまでの記事と同様に、本連載で取り上げているフォーマットの一覧を再掲します。, ※出展:日本プロ野球機構オフィシャルサイト・歴代最高記録 本塁打 【通算記録】より, 連載第1回でも申し上げましたが、上記サンプルデータをCSVフォーマットで表すと以下のようになります。, 各データが区切り文字(デリミタ)で区切られています。本データにおいては、各レコード(王さん、野村さん…)のデータが改行文字で区切られており、また各項目(順位、氏名、ホームラン数)が、カンマ文字で区切られています。この「区切られている」という記述ルールがCSVの最大の特徴です。, その前にここでちょっと脱線です。みなさんに覚えておいていただきたい豆知識があります。それは「実は、これがCSVファイルである!という明確なルールは存在しない」という事です。CSVは「方言(細かなルールの違い)がある。その違いをプログラム側で把握した上で処理を行わなければいけない。」というフォーマットなのです。一例としては「文字列データを”AAA”のようにダブルクォートで囲むか否か?」というものが有名な方言です。今回はこれらの方言についてはあえて触れません。この方言について述べるとかなり長くなってしまいますので、別の連載に機会を移したいと考えています。, この方言については世界的標準策定の視点からも見て取れるものです。たとえば、今日我々は多くのコンピュータ資産とふれあいながら生活していますがそのコンピュータがやりとりをする為の多くのルールがRFC(Request for Comments)という公開形式にもとづいた仕様に則っています。いちばん身近な例としては、みなさんはインターネット上のサイトにアクセスする際「http://~」という文字列を見たことはありませんか?これはhttp(Hypertext Transfer Protocol)というインターネット上で情報をやりとりするための会話処理手順であり、これはRFC 2616という管理番号で公開されています。httpはこの中でもDRAFT STANDARDという段階にあり、これはこの技術が安定的に確立された仕様であることを意味します。これは言い換えれば、あるプログラムがhttpの処理手順を自分の機能として持つ場合、それがRFC2616の内容を満たさないものであるならば、それば「プログラムにバグがある、もしくはhttpを処理するプログラムではない。」と言えるほどの強制力のある仕様です。これに対してCSVは、RFC 4180で公開こそされていますが公開段階はINFORMATIONALです。これは標準化への成熟段階へ至らない情報提供という扱いなのです。さきほどの「文字列データをダブルクォートで囲む」という規約に関してもRFC4180内では囲んでも囲まなくてもよい(may or may not be enclosed)という表現になっています。RFC4180がINFORMATIONALにすぎない上に、RFC4180内の記述内容も「囲んでも囲まなくてもよい」という表現なのですから、この方言がいかにあいまいなものかがお分かりいただけると思います。, 大脱線してしまいました。ではこんなCSVフォーマットについて前回と同様に「第2回で説明した6つの共通的な取り決め」に照らし合わせて特徴を掘り下げていきましょう。, これらに関する取り決めを定めている(=持っている)のは誰でしょうか?入力データでしょうか?プログラムでしょうか?という質問をしました。, CSVの場合、この答えは「基本的にはデータとプログラムで、以下のように仕様を分担している」です。, 上記のIとIIに関しては、第三者(このデータのデータ仕様を策定した人以外)もデータを見ただけでこのデータの構造がわかります。逆に上記a.b.cの仕様については、第三者はこのファイルだけを渡されてもデータの構造に関する仕様を知ることができません。, 前回と同様、例えばこのデータをAさん(Aさんのプログラム)が作って、そのデータをAさん→Bさん→Cさん→Dさんが利用していく場合、B・C・DさんはAさんから「上記a.b.cに関してはプログラムが処理するデータ仕様(ファイルレイアウト)」が提供されないと処理ができないのです。本サンプルデータのデータ仕様の例を以下に示します。, 前回も説明させていただきましたが、上記のデータ仕様もAさん→Bさん→Cさん→Dさんとデータが手渡されていく際に上記のデータ仕様も一緒に手渡されていかなければなりません。この前回私はこの面倒くさい状態を「データの再利用性が低い」と説明しましたが、CSVフォーマットも再現性の低さをもっています。しかしここで、このCSVのデータ仕様と前回のフラットフォーマットデータ仕様を見比べてみてください。データ仕様の記述量が前回と比べて減っていることにお気づきいただけるかと思います。すなわち「面倒くささが減っている」わけです。この点において「CSVファイルは固定長フォーマットにくらべて再利用性の高いデータフォーマットである」と言えるわけです。, このルールを持っているのはデータです。項目データは「カンマとカンマの間のデータ」というルールなので、項目の長さをプログラムで決める必要がないのです。フラットフォーマットのようにまた「一度決定した項目の最大データサイズを後から変更する場合、それまでに作成したプログラムを修正しなければならない。」ということはありません。また「データの長さが項目長に満たなかった場合、右側をスペースで埋める」という必要もありません。, この観点において、「CSVフォーマットは自由度の高いデータフォーマットである」と言えるわけです。, この取り決めに関してはフラットフォーマットと同様に取り決めを定めているのはデータになります。本サンプルは歴代1位の王さんから歴代5位清原さんまで掲載していますが、このデータに6位のかたが加わったとしても、プログラムの処理に変更はありません(しつこいようですが6位は落合さん)。データレコードの最大データサイズ(レコードの件数)はに関しては、「固定長フォーマットは再利用性・自由度ともに高いデータフォーマットである」と言えます。, この取り決めを定めているのはプログラムです。この文字コードにする取り決めはフラットフォーマットと完全に同じです。データの中に構造を定める要素はなにもありません。このホームラン順位のデータを処理するプログラムだけが(もしくはそのプログラムの作成に関わった人だけが)このデータの文字コードを知っている事になります。それ以外の第三者は、このファイルを渡されてもデータがどのように格納されているかを知ることができません。したがって文字コードに関してはデータの再利用性に関しても高いとはいえません。, このエスケープ文字に関する取り決めは、さきほど脱線した「CSVの方言」に関連して少々複雑です。まず取り決めを定めているのはデータです。しかし方言の解釈はプログラムで処理しなければならないのでプログラム側での取り決めも存在します。プログラム側での取り決めが軽微であるという意味で「CSVフォーマットは再利用性・自由度ともに高いデータフォーマットである」ということができます。ここでCSVファイルを扱う上で、このエスケープ文字の処理の取り決めは注意を要するので少し触れておきます。まず代表的な事例が「CSVデータの中でカンマ文字や改行文字を表現したい場合どうするのか?」ということです。これに関してもっとも簡単な解決方法は「データの中にそれらの文字が入らないような制限を処理仕様として定める」事です。この場合エスケープ文字については考慮の必要がなくなるので、処理は単純になります。実際この解決方法を採っているシステムも数多く存在します。対してこのような制限を仕様として許容できない場合、, という処理の仕様になります。このようなCSVをよく「Excelで使うCSV」という言い方をします。ちなみにダブルクォート文字2つ「””」の文字列をエスケープするにはダブルクォート文字4つ「””””」という取り決めになります。ただ、このようなCSVはテキストエディタなどでデータを参照した場合の読みやすさや、データを人間が手動で編集した場合間違えてデータを壊しやすいなどの短所を持っています。, 前回も申し上げましたが、CSVファイルの処理速度は固定長フォーマットに劣ります。CSVファイルは改行文字(CR,LF)をデータ1レコード分の区切り文字としたルールを持っていますが、これを処理するプログラムはCSVファイルのデータ1バイトずつを順番に見ていってそれが改行文字であるかを判断しているためです。しかしながらXMLやJSONなどのフォーマットと比べると遥かに高速にデータを処理することが可能です。XMLやJSONのほうが記述ルールおよびファイル構造が複雑である事がその理由なのですが、どのように複雑であるかは次回以降に説明をします。, 以上、各フォーマット説明の第二弾としてCSVフォーマットについて説明しました。ここで多少の私見をまじえて今回のまとめを述べます。, CSVフォーマットはフラットフォーマットの自由度の低さを補うために考え出されたということが言えます。特にフラットフォーマットの宿命である「項目データの長さに制限がある」「項目データの長さに変更があった場合、影響範囲が大きい」という制限は、一つのデータファイルが単独で複数の人の手やプログラムを渡り歩く現在のシステムにとってはあまりにも不親切なフォーマットであると言わざるをえません。CSVフォーマットはデータの構造や項目データサイズにおいてより高い再利用性や自由度を獲得しています。しかし代替として「文字のエスケープ」というデータ処理において注意が必要な「面倒くささ」を押しつけられました。このようにデータフォーマットの変遷は「たくさんの便利な事」と「ちょっとの面倒くささ」を交換しながら変遷していくものだと私は思っています。次回以降もこの交換ストーリーを書いていきたいと考えています。また実はここまでの記事では私的にはまだCSVについての特徴を述べきっていません。このまとめの続きは残りのXML、JSONについての説明が終わった後に本連載4フォーマットの全体をまとめる記事で述べさせてください。, 次回フォーマット説明の第三弾は、XMLファイルについての説明をさせていただきます。, ギックス テクノロジーアドバイザー。システムアーキテクトとして、幅広い業種・業態に対するコンサルティングサービスを提供。政府・公共系機関向け電子申請パッケージシステムのコアデザインや、数千万規模の会員管理システムにおけるメインアーキテクトなどの経験により、プログラム、ネットワークのみならず、システムセキュリティやクラウド領域にも深い造詣を持つ。, オブジェクト指向プログラミング(OOP)をおさらいしよう~自分のプログラムが「他者をより便利にする」という願い~, リフレクション解説第二回~プログラムの内部構造をデータとして取得~|オブジェクト指向プログラミング(OOP)をおさらいしよう(8), AWSの新サービス「AWS WAF」がリリース~re:Invent 2015 速報~ Webアプリケーションのセキュリティがより強固に, 第3回・フラットファイル(固定長フォーマット)|CSV、XML、JSON…データフォーマットの変遷について考える, 第5回・XMLファイル|CSV、XML、JSON…データフォーマットの変遷について考える, 第6回・JSONファイル|CSV、XML、JSON…データフォーマットの変遷について考える, 第1回 進化するフォーマット|CSV、XML、JSON…データフォーマットの変遷について考える, 第2回・テキストデータ処理における取り決め|CSV、XML、JSON…データフォーマットの変遷について考える, 第7回(最終回):何が良いかはケースバイケースだ!|CSV、XML、JSON…データフォーマットの変遷について考える, (SetUp編)Windowsスティック型PC m-Stick MS-NH1を使ってみた/ニュースななめ斬りbyギックス, AWS launch_speed・・・打球速度(「Exit Velocity」とも表現されます), 説明変数・・・打球速度(launch_speed)、打球角度(launch_angle)[実際の数値データ]. 選手詳細. ななめ斬り データ分析のお作法 戦コンの起業力 選手Map 成績推移Chart. Baseball LAB(ベースボールラボ)ではプロ野球の速報や選手成績などを掲載。データスタジアムが取得する一球データを基にプロ野球各試合の勝敗予想や、セイバーメトリクスなどの分析コラムを提供。その他にもデータを切り口にしたプロ野球の情報が満載です。 ビッグデータ活用 talend 日本プロ野球記録. ギックス総研 クラウドサービス データは「Baseball Savant」のデータ検索から、2018年MLBの打撃データを取得して使います。件数が12万件以上もあるので相当なデータ量ですね。ダウンロードしたCSVには多くのデータ項目がありますが、今回は以下に絞って使っていきます。 Microsoft_Power_BI活用術 講演・発信 プロ野球データベースNEO. 思考の型 ビッグデータ本 thinkapedia 連載第1回でも申し上げましたが、上記サンプルデータをcsvフォーマットで表すと以下のようになります。 ベンチャー企業の快適オフィスづくり リテール分析 相棒総研 Welcome! 扱うデータも多く、ビジュアルも充実しているため、とても見やすいです。シンプルに楽しめます。 日本プロ野球記録. きこえーご tableau分析 GiXo コンポーネント エンジニアとしては経験が浅く、まだまだ勉強しなければいけな…, フットボール事業部の高橋です。 打者個人. csvファイルはデータが区切られている. 2018年プロ野球順位表. マーケティング・テクノロジスト テクノロジー用語 打者の個人成績を表示 … データロガーから出力される大量のCSVファイルをPythonで圧縮 2020年6月11日 【プロ野球スクレイピング】年次データを抽出しExcelに出力 全選手、全… 2020年4月19日 研究室分属前にやっておくと得するかもしれないプログラミング言語 2020年4月19日 TEAM CMO やはり、自分の好きなものを使って練習しないと面白くないと思うでの、野球好きでPythonを勉強したい方は楽しめるかもしれません。, 当初はスクレイピングを目標にしていたのですが、プロ野球のデータは大体、表形式にまとまっています。, データはNPB公式を利用しました。機械的に大量のwebサイトを漁るのは多くのwebサイトで禁止されており、利用も個人利用に制限されています。今回は、何度もwebサイトにアクセスしなくて済むようにcsvファイルへ保存してから分析を行います。, なぜか打率や打席数などのカラム名が2つになっていました。現在のままだと、分析ができないので、整理していきます。, やはり年間を通じて試合に出ている選手だけあって、.800前半の値を最頻値に高水準にまとまっています。, ただ、レギュラー選手なのにも関わらず、OPSが.600を下回っている選手が何人かいます。低OPSの選手をレギュラーとして使わざるを得ないのか、それとも他の選手よりも明確な強みがあるため、打撃に目をつむっているのかわかりませんが、今回整理したデータを使って、もう少し分析をしてみようと思います。, 「御社が第一志望です」のウソが危険な理由。採用する側が、そういう人と働きたいとは思えない, 【書評】さあ、才能(じぶん)に目覚めよう ストレングスファインダー2.0 私の受験結果を紹介. ・2打席目:106.3mph、34.0° → 98.3% news R言語 人流分析 POS分析 ・4打席目:95.8mph、27.4° → 66.4%, 2打席目は本塁打の確率が98.3%と、ほぼ完璧な打球だったことがわかります。看板直撃も頷けますね。一方で4打席目は66.4%とこちらも高めの数値ではありますが、もう少し勢いがあれば、、という性質だったことがこの結果から確認できます。, Google Cloud PlatformのAutoMLを使った機械学習により、打球速度と打球角度をパラメーターとして本塁打の確率を返すモデルを作成してみました。機械学習を使うことで、実データでは評価できない領域までを定義して、実際の打球から打撃結果を予測できるようになりました。, 対象として2018年MLBのデータを使用しましたが、別シーズンのデータを使ったり、日本のプロ野球やアマチュアのデータを使えば、また違ったモデルを作成することができそうです。, また、パラメーターは2つの変数だけでしたが、本塁打に影響する要素はなんだろう?と考えてみると、ライトやレフトなどの打球方向、フェンスの高さや距離、風向きや風速、投球の性質など、様々なものが思い浮かびます。このようなパラメーターをさらに増やして、より深みのあるモデルを作成することもできそうです。, 今回は本塁打に絞って評価してきましたが、ここまでレポートを書いてくると、安打の確率はどうなの?という疑問も湧いてきますね。最後にそれもご紹介しておきます。赤は確率が低く、青が濃くなるほど長打率が高くなっています。なかなか興味深い絵になったのではないでしょうか。機械学習を使ってこのように予測することで、野球に対する理解の幅が益々広がっていきそうですね。, 配信サービス部の土屋です。主に野球の速報配信サービスに携わっています。 他では見られないプロ野球の詳しいデータを掲載。チーム成績、選手成績。 プロ野球のデータが満載!チーム・選手の成績やセイバーメトリクスに使われる指標、他のサイトでは見られないユニークなデータを掲載しています. 選手成績のページです。状況別の成績を確認できます。 View.

日本食 海外 ブーム, 中学 英語 レベル, メルカリ 住所変更 発送後, Typescript Jsonファイル 読み込み, 黒い砂漠 行動力 金策, Mag Synchro Wave T-694, 牧場物語 再会の ミネラル タウン いちご牛乳, Oracle 主キー 削除, Ipad 3dタッチ 設定, 塩昆布 炊き込みご飯 2合, ワイヤレスイヤホン 充電ケース 充電できない, Ipad ダウンロードとインストール できない, Rds Aurora 暗号化, 国際興業バス 運転手 態度, Dプログラム おしろい カバー力, 電気ケトル 水以外 入れ ん な よ, 浴室 照明 明るさ, 水耕栽培 ペットボトル トマト, ノア モデリスタ マフラーカッター, ハイエース バンパーガード 中古, 博多 由布院 車, Huawei タブレット Sdカード 内部ストレージ化, オールシーズン 服 メンズ, Line 名前 知られたくない, ツイキャス ゲーム配信 アイフォン, 離乳食 ホワイトソース 中期, 名古屋 新幹線 駅弁, C言語 1からnまでの和 関数, プロフィール写真 服装 女性, 豚バラ もやし 幼児食, 犬夜叉 声優 コナン, マイクラ ボイスチャット Pc, 高知 大阪 バス とさでん, スマブラ 飛び道具 ランキング, 白黒 絵 簡単, ドラクエ10 家キット 和風,