実際、Rを使った方がいいよ!と言われても、DataVolleyやVolleyStationで事足りてるし。という方がほとんどだと思います。リーグ全体や大量のデータを扱うときは、R便利という話はしましたが、それ以外にもRじゃなきゃできないよ、という分析を紹介していきたいと思います。そもそも今回のやつは別にRでなくても良いのですが、こんなことできますくらいに捉えてもらえれば。
今日はRのShinyというフレームワークを使用して、プログラミングは文字がたくさんで嫌気がさすー。みたいなことを極力なくしていきたいと思います。
今回は、Rをインストールした後の状態から、実際にローカル環境で「セット位置とアタックコースの連動分析アプリ」を立ち上げるまでの手順を解説します。
前々回の記事のstep1、RとR Studioのインストールは終わらせておいてください。
1. 必要なパッケージのインストール
まずは、データの読み込みと可視化、そしてアプリ化に必要なツール(パッケージ)を揃えます。RStudioの左下にある「Console」タブに以下のコードを貼り付けて、Enterキーを押してください。
# バレーボールデータ解析の標準セット
install.packages(c("shiny", "dplyr", "ggplot2"))
- shiny: Webアプリ化するためのツール。
- dplyr / ggplot2: データの加工と、グラフ作成に必須のライブラリ。
install.packages("datavolley",repos = c("https://openvolley.r-universe.dev","https://cloud.r-project.org"))- datavolley: DVW/VSMファイルを読み込み、バレーボールのルールに基づいた解析を行う核となるパッケージ。前回やった人はいらないですが、一応もう一度やっておきましょう。
2. 分析用スクリプトの準備
パッケージの準備ができたら、分析の「本体」となるコードを用意します。この下のコードウィンドウ右上のコピーボタンを押して、全文コピーしておいてください。コードの部分だけ、無料メンバー登録が必要とさせていただきます。
3. ローカルホストでアプリを起動する
いよいよアプリを動かします。
- エディタの右上にある [Run App] ボタン(またはコード内の
shinyApp()の行でCtrl + Enter)をクリックしてください。 - RStudio内の「Viewer」またはブラウザが立ち上がり、Localhost(自分だけのプライベートな通信環境)でアプリが動作し始めます。
4. アプリの使い方と分析のコツ

立ち上がった画面で、以下の手順で分析を進めてみましょう。
1.ファイルの参照
お手持ちの .dvw または .vsm ファイルを選択します。といいたいところですが、この分析はコーディネーションデータ、つまりマウスを使って、アタックとセットのコース入力をしていないと行うことができません。そこまでやっている方はなかなかおられないと思うので、サンプルファイルを置いておくので、ダウンロードしてこのファイルで試してみてください。
2.チーム・選手の選択:
ファイルを読み込むと自動的にリストが更新されるので、分析したい対象を選びます。
3.ドラッグ・アンド・分析

- 左側のコート: セッターがトスを上げた瞬間の位置(Contact Point)がプロットされています。ここをマウスでドラッグして「四角い枠」を作ってください。
- 右側のコート: その「選んだトス位置」から発生したアタックの軌道だけが、瞬時に表示されます。
こんなことが分析できる
・セッターのセット位置によって、アタックのディレクションが変わるのか。
・セッターがライト際に寄ったら、レフト側に寄ったら、配分が変わるのか。
・この分析には載せていませんが、特定の位置からのセットの決定率etc。
もちろんDataVolleyやvolleyStationでも、セットのゾーンを指定して、ディレクションチャートやスプレッドシートで似たような分析を行うことはできますが、9Cと8Bと8Cのエリアとかいちいち指定するの面倒ですし、#レセプションの中でも細分化みたいことや、すこしずつゾーンをずらすなんてこともできるので、興味深いデータが得られることもあります。
コードを書き換えれば、サーブの落下地点との連動など、アイデア次第で無限の分析が可能です!
