情報発信・寄稿

第1回 R初心者合宿講習会に参加してまいりました

はじめまして、IRC特任研究員の平田と申します。連休も終わり、いよいよ平成29年度もこなれてきた頃ですが、みなさまいかがお過ごしでしょうか。
「情報発信・寄稿」の初回更新となる今回は、私が2017年3月に参加してまいりました「第1回R(アール)初心者合宿講習会」についてお話ししたいと思います。なお、この記事は同講習会で使用されたスライド、ならびに同講習会のテキストに選定された書籍・小林雄一郎 (2017)『Rによるテキストマイニング』(オーム社)を参考としています。

まず最初に「Rとは何か」ということについて、1行にまとめたいと思います。

  • 統計やテキスト分析ができる、無料のプログラミング言語

Rとは何か、ひとことで言うなら「プログラミング言語」になるかと思います。基本的にはキーボードから文字を打ち込んでエンターキーを押す、という段取りの繰り返しで、統計処理を行ったり、テキストにタグ付けを行ったりできるものです。
Rは無料で利用でき、また、パッケージを追加インストール(これも無料です)することでさまざまな機能を追加することができます。自分のやりたいことを整理して、適切に調べていけば、Rを用いてかなりいろいろなことができます。
講習会では、Rを利用する環境として、以下の3つのご紹介がありました。

まず、RとRStudioについては、どちらもダウンロードしたアプリケーションをインストールして、というおなじみの形で利用することができます。RとRStudioの違いについては、RStudioのサイトのトップページに “RStudio makes R easier to use. It includes a code editor, debugging & visualization tools.”(2017年5月10日閲覧)とあるように、無印のRに利用しやすくするような各種機能を追加したものがRStudio、ととらえて大きく間違いはないでしょう。
最後のRStudio Serverについては、利用のためにサーバの設定が必要になるので、個人でまず試してみたい、という場合は無印のRかRStudioのどちらかをお使いになるのが手軽かと思います。講習会では、どのパッケージがインストールされているかなど、受講者全員の環境を揃えるためにRStudio Serverを使用するコマもありました。


ここからは、Rを実際に使うにはどのような操作が必要かといったことを、2×2のクロス集計表に対してのカイ自乗検定の実行を例に、簡単にご紹介したいと思います。
東京外国語大学の男子学生・女子学生の数について、言語文化学部・国際社会学部の学部ごとにまとめた表を、Excelで作ると以下のようになります(http://www.tufs.ac.jp/abouttufs/outline/data.html より 2017年5月10日閲覧)。

このような表をExcelで作る場合、キーボードを使うのは文字・数字だけで、あとは方向キーやエンターキーを使うかどうか、といったところでしょうか。文字の入力以外は全てマウスの操作で行うことも可能ですね。
この表と同じものを、「table」という名前をつけてRで作成するためには、以下のような文字をキーボードから入力することになります。

ハードルが高いと感じる方もいらっしゃるかもしれません。文字入力だけですべての作業を行うのは、ウィンドウズやマッキントッシュのOSに慣れていると確かにハードルが高いですが、その分作業プロセスをあとに残しやすく、同様の作業を再度行うときに追いやすいという利点と表裏一体のように思います。
さきほど作った「table」がきちんとできているか、確認するには「table」と入力して、エンターキーを押します。

無事できていることが確認できました。カイ自乗検定を行うには、以下のように青字の部分を入力します。エンターキーを押すと、検定の結果が黒字で表示されます。表を作成するときとは違って、入力するのは1行で済みます。

結果得られたp-valueは非常に小さな値で、「『言語文化学部と国際社会学部で、男子学生と女子学生の割合には差がない』という仮説は否定される」=「学部によって男女比が有意に異なる」という結果が得られました。正直に申しますと、私はこの講習会に参加するまで、統計についてはまったく知識がなかったのですが、結果の見方も、講習会でやさしく教えていただきました。

まったく知識のない状態から、このような作業をどのような手順で行えばよいか、講習会で学んできました。講習会の時間割は、以下のとおりです(https://www.rbootcamp.org/?p=128)。

  • 第1日: RおよびRStudioのインストールと基本操作/パッケージのインストール
  • 第2日: ベクトルと行列/文字列処理/データの要約/ファイルの読み込み
  • 第3日: データの可視化 (1) (2)/統計 (1): 対応分析・クラスター分析/統計 (2): 相関・回帰
  • 第4日: 統計 (3): 対応分析・クラスター分析/統計 (4): 判別分析・決定木/日本語処理 (1): 頻度解析・用例検索/日本語処理 (2): 複数ファイルの解析
  • 第5日: 英文処理: 発展的なテキスト処理/まとめ、講評

会場は「セミナーハウス クロス・ウェーブ幕張」でした。JR京葉線海浜幕張駅からすぐのところにある宿泊研修施設です。恥ずかしながら宿泊研修施設というのがどういったものなのか知らなかったのですが、出入り口のフロアにフロントがあり、それとは別に客室のフロアがあるといった具合で、研修室のフロアが設けられている以外は、普段利用するようなビジネスホテルと同様の施設でした。
講習会は5日間かけて、ソフトウェアのインストールのところからしっかりと教えていただきました。受講者が会場の研修室に集合し、各自持参したノートPCを使って、プログラミングの実習を行う形式でした。会場には講師の先生と、巡回して随時質問に答えてくださるTAの方がいらっしゃいました。まったく知識のないものの使い方を覚える上で、知識をお持ちの方から直接レクチャーを受けられるのはたいへんありがたく、勉強になりました。私が持参したマッキントッシュでは、デフォルトの設定のままだと日本語を使用したグラフを描画した際に文字化けが起こってしまうのですが、文字化けの対処法が記載されている参考リンクを講師の先生から教えていただき、無事日本語が使えるようになりました。このあたりは、自分ひとりでは対処が難しかったところかもしれません。
また、「初心者」と題されているとおり、すべての話題について基本のところから案内があり、また、前述のとおりいつでも質問ができるように整えられていたので、安心して受講することができました。


Rでなにができるかについては、上の時間割でもお示ししたとおり、さまざまな処理が可能であるため、私の知識では「いろいろできる!すごい!」としか申し上げられません(申し訳ございません)。下記の講習会のサイトに推薦図書のリストがありますので、「まず何か本を1冊」とお考えでしたら、上記のテキスト『Rによるやさしいテキストマイニング』や、参考図書リスト内から選ぶのもひとつの手段かと思います。
この「R初心者合宿講習会」ですが、私の参加した講習会に「第1回」とついている通り、2017年5月時点で次の開催も予定されているようです。上にも書いた通り、知識をお持ちの方によって整理された情報を、質問ができる状態で受け取ることができるのはなかなかない機会だと感じています。ご興味をおもちの方は、R初心者講習会実行委員会のウェブサイトをご覧になってみてください。
R初心者講習会実行委員会のウェブサイト(https://www.rbootcamp.org/)


第1回の「情報発信・寄稿」は以上です。今後も、IRCのメンバーからお伝えしたいことを更新してまいりますので、みなさまよろしくお願いいたします。