Rの基礎 1

ICH E9で統計の内容に触れましたので、少し脇道に逸れて統計、の前にRについて説明します。Rを理解することで統計計算をRに肩代わりしてもらうことができます。統計の説明は後ほど行いますが、統計の説明にもRを使用します。Rを使えるようになることが目的というよりは、どういうものなのか理解してもらうような形にしています。Rを本格的に学びたい方はR-Tipsから入門されることをおすすめします。

Rは統計解析向けのプログラミング言語で、CRAN(Comprehensive R Archive Network https://cran.r-project.org/)によって、開発・維持されています。R言語スクリプト言語の一つで、CRANが管理する多数のライブラリをインストールして用いることで、様々な統計手法の使用やグラフなどの作成を可能にするツールです。Rは統計学専門のプログラミング言語ですので、プログラマーでなくても使用できる比較的簡単な文法を持ち、スポット的に統計解析を行いたい場合には非常に便利なツールとなっています。開発されてから時間が経っているため、学習材料が多く揃っていることも特徴の一つです。一方、サーバーでバックエンドで機能する機械学習ツールの作成や、汎用のプログラミング言語としての使用、速度が必要とされる状況での使用にはあまり向いていません。プログラミング一本で働くなら、始めに学ぶ言語としては適していないように思います。統計をやりながら汎用のプログラミング言語を理解するなら、Pythonを学ぶ方がよいでしょう。臨床統計ではSASの使用がデファクト・スタンダードとなっているため、臨床統計を真面目に学びたい方はSASを学ぶことが推奨されますが、SASはフリーの学習材料が少なく、自前で学習するにはややハードルが高いものとなっています。

Rはスクリプト言語で、コンパイラを使用してプログラミングコードを一度に機械語(0や1)に変換する言語(CやJavaが代表的)とは異なり、コードを逐次実行するインタプリタを用いています。インタプリタを使用しているから、というわけでは必ずしもないと思いますが、Rは他の言語より計算速度が遅い傾向にあります。

Rを使用するには、インタプリタのインストールと、統合開発環境IDE)としてのRStudioのインストールが必要となります(RStudioは必ずしもインストールしなくてもよいのですが、Rを使いやすくするために便利なツールです)。インタプリタはCRANのホームページからOSに適したインストーラをダウンロードし、インストールします。RguiというGUI(Graphical User Interface)がインストールされるため、この段階でRは使用可能です。RStudioのインストールはRStudioのホームページ(https://rstudio.com/)からインストーラをダウンロードし、行います。RStudioは事前にインストールしたRを検出して、自動的にRStudio上でRが使えるようにしてくれます。

RStudioには、プログラムを書くエディタ、プログラムの結果を表示したり、対話的プログラミングを行うコンソール、オブジェクト等の情報、グラフの表示部分に分かれています。プログラムはテキストエディタに書いた後で実行することもできますし、コンソールに直接書き込んで実行することもできます。

Rでは、他のプログラミング言語と同様にデータの型が存在します。データの型はデータに対応する計算方法や取り扱いに関連するため、プログラミングにおいて重要な要素となります。ほとんどのプログラミング言語の入門書では、まず型についての説明がされていると思います。Rでは文字列、数値、ロジカルなどのデータ型に加えて、Factor(因子)と呼ばれる、数値に名前がついている形の型が存在することが特徴的です。データの集合としては、ベクター(他言語では配列と呼ばれることが多い)が計算に頻用されることも特徴的です。他言語の配列と異なり、ベクターは演算を直接行うことができます。データの集合として、ベクターの他にリスト、行列、データフレームなどがあります。データフレームはExcelの表のようなもので、Rを使用する上で非常に頻繁に使用されるデータ型となります。