R言語はプログラミング言語のひとつですが、有名な「Java」・「C#」・「C++」等のプログラミング言語とは違って、統計解析に特化したものです。そのため大規模のビックデータの解析や、機械学習に使われます。ソースコードが簡単で比較的に覚えやすいです。データ解析や機械学習というとPythonというプログラム言語が有名ですが、R言語も人気のあるプログラム言語の16位に選ばれています、
この記事ではR言語のインストールから実践、お勧めの入門書や学習できるサイトを紹介します。R言語を使った開発を外部に頼みたい方にも役立つ内容になっています。
コンピュータの専門学校がプログラミング及び、コンピュータの基礎を学び、その後、日本電気の子会社で働きました。その後、いくつかの開発の仕事を経て,コンピュータの専門学校の講師兼担任を経験し、その後はフリーにてシステムエンジニアやプログラマーの開発の仕事を担当、そのかたわらプログラミングスクールや職業訓練所、企業の新人教育などを担当しました。 25年以上のシステムエンジニア、プログラマーの仕事の経験があります。
【準備編】R言語の入門!
R言語は統計解析に特化したプログラミング言語で、開発するためにはR言語自体とR言語の開発環境をPCにインストールする必要があります。開発環境ではRStudioが一般的に使われています。
こちらでは、R言語で開発するための準備として、R言語やR言語の開発環境(RStudio)のインストールなどの手順についてみていきましょう。
R言語をインストール
まずはR言語をインストールします。R言語はマルチプラットフォームといって、複数のOS上で動かすことができます。そのためにR言語のインストールツールのダウンロード手順はOS毎に異なることが注意です。
こちらでは、WindowsOSでR言語をインストールする手順をみていきましょう。
- R言語を配布している公式サイトに遷移
- OSに対応したR言語ダウンロードリンクをクリック
- サブディレクトリから「base」をクリック
- 「Download (バージョン番号) for (OS)」をクリックしてダウンロードして実行・インストール
R言語を配布している公式サイトに遷移
以下のR言語の公式サイトを開きます。
サイトが開いたら左側の
CRAN
という文字のCRANをクリックします。※CRANというのは(Comprehensive R Archive Network)は、R本体や各種パッケージをダウンロードできるWebサイトのことで、公式サイト自体はドキュメントやいろいろな情報が掲載されているサイトで、そこからCRANに飛んでR言語をダウンロードします。
いろいろなCRANのミラーサイトが一覧となっています。※ミラーサイトとは本来のサイトをコピーしたもので、各国にサーバーがあってそれぞれの国で繋がりやすいように用意されています。(繋がりやすいとは、ダウンロードが早く終わるようにしているということです。)
その中で、どのサイトを開いてもよいのですが、日本のサイトhttps://ftp.yz.yamagata-u.ac.jp/pub/cran/を選択します。
OSに対応したR言語ダウンロードリンクをクリック
遷移すると画面上部の「Download and Install R」ボックス内から、「Download R for Windows」をクリックします。他OSの場合は、そのOSの名称がついたリンクをクリックしてください。
サブディレクトリから「base」をクリック
Windows対応のR言語では「Download R for Windows」をクリックするとさらにサブディレクトリの選択が求められます。
上記の画面から「base」をクリックして遷移してください。
Mac版の場合は、「Download R for macOS」をクリック遷移後にすぐに最新盤のダウンローダーのリンクが表示されるため、最新バージョンのリンクをクリックする必要があります。
「Download (バージョン番号) for (OS)」をクリックしてダウンロード
遷移すると画面上部の「Download (バージョン番号) for (OS)」のリンクをクリックしてダウンロードします。
R-4.4.1-win.exeをダブルクリックして実行してインストール
言語で日本語を選びます。
次へをクリック
インストールする場所を入れます。通常はそのままでかまいません。
インストールするコンポーネントを選びます。通常はそのままでかまいません。
起動時オプションをカスタマイズするかを決めます。通常はそのままでかまいません。
スタートメニューにショートカットを登録するかを決めます。通常はそのままでかまいません。
インストールする際のいろいろなオプションを決めます。通常はそのままでかまいません。
インストールが始まります。
インストールが終了しました。
スタートメニュー>すべてのアプリに「R」が表示されます。
R4.4.1を選択すると以下のように立ち上がります。試しに124+456と入れると計算されて答えを返してきます。
R言語の開発環境を整える
次はR言語の開発環境を整えるフェーズです。R言語の開発環境候補には「R Studio」や「Visual Studio Code」、「Google Colaboratory」があげられます。
その中でも、「RStudio」はR言語公式の開発環境です。必要なパッケージ(ライブラリ:すでに使えるプログラムが用意されているもの)をインストールしたり、エラーが発生する際のデバッグ等が簡単にできるようになっています。
その他の開発環境もおすすめですが、特段こだわりがない場合は、「RStudio」を活用することが無難といえるでしょう。
RStudioのインストール
RStudioの公式サイトを開きます。以前はサイトの名前がRStudioでしたが、今は開発をおこなっているPosit社のサイトになります。
右上の青いボタン「Download RStudio」をクリックします。
左下の青いボタン「Download RStudio」をクリックします。
※ここではWindows用のRStudio Desktopインスト―ルになります。RStudio ServerはLinuxのサーバーで使うバージョンになります。
※画面は表示を縮小しているので、青いボタンが表示されてない場合はスクロールしてください。以下の画面も同様です
Rはすでにインストールしているので、右側の青いボタン「Download RStudio DeskTop For Windows」をクリックします。
RStudio-2024.04.2-764.exe(2024年6月時点)がダウンロードされます。※少し時間がかかります。
RStudio-2024.04.2-764.exeをダウンロードして実行します。
次へをクリックします。
インストール先のフォルダを指定します。そのままでもかまいません。
RStudioのショートカットを作成するスタートメニューのフォルダを選択します。ここではRを選択しましたがどこでもかみません。
インストールのボタンをクリックします。インストールが開始されます。
インストールが完了しました。
完了をクリックします。
スタートメニューからすべてのアプリでRのフォルダを見ると、RStudioのショートカットが作成されています。
RStudioのショートカットを選択します。
先にインストールしているRが64bitなので、それを選択します。
RStudioが起動します。
RStudioでスクリプト(プログラムのソースのこと)を実行してみます。
※スクリプトはRStudioで作れますが、メモ帳などのテキストエディタでも作れます。
メニューバーのtoolsをクリックして、Global Optionsを選択します。
設定画面が開きます。
RversionでR言語のバージョンを確認します。以前にインストールしてあるバージョンを確認します。(ここではR4.4.1です。)
ワーキングディレクトリを指定します。(スクリプトのあるフォルダを指定します。)
OKをクリックして、RStudioを再起動します。
右下のペイン(分割されて表示されている画面)Filesに設定したフォルダの内容がでています。
実行するスクリプトをクリックすると、左上に新しいペインが表示され、スクリプトの内容が表示されます。
左上のペインのスクリプトの最初の行にカーソルをあわせ、〖Ctrl〗キーと〚A〗キーを同時に押すと、スクリプト全体が選択されます。その状態で、〖Ctrl〗キーと〚Enter〗キーを同時に押すと、スクリプトが実行されます。
左下のペインの最後の行に実行結果が表示されます。
1行づつ実行したい場合は、
左上のペインのスクリプトの最初の行にカーソルをあわせ、その状態で、〖Ctrl〗キーと〚Enter〗キーを同時に押すと、スクリプトが実行されます。
左下のペインに最初の行が実行されたことがでてきます。
エラーをわざと起こしてみます。
左下のペインに赤い文字でエラーのメッセージが表示されます。
以上、簡単にRStudioでスクリプトを実行する方法を説明しましたが、RStudioの操作方法は、いろいろな設定が存在し、ペインも多数あるので、それらの説明だけで一冊の本になるのでここでは触れません。後程、紹介するおすすめの本やサイトを参照してください。
【実践編】R言語を使ったプログラミング
R言語の準備が完了したら、実際に開発環境を開きプログラミングを行っていきます。
こちらでは、R言語のプログラミング基礎についてみていきましょう。
簡単な計算:四則演算(+-÷×)
こちらでは、四則演算などの簡単な計算をR言語で行う場合のプログラミングについて紹介していきます。
[1] 579
>
> 123-456
[1] -333
>
> 123*456
[1] 56088
>
> 123/456
[1] 0.2697368
>
上記がR言語とR Studioを活用した場合のプログラミング例です。上記のほかの計算記号としてべき乗や円周率などがあります。
> pi
[1] 3.141593
>
> 2 * pi
[1] 6.283185>べき乗
> 2^2
[1] 4
>
四則演算や計算にまつわる演算子は以下の通りです。
演算子名 | 演算子 |
加算(足し算) | + |
減算(引き算) | – |
乗算(掛け算) | * |
除算(割り算) | / |
整数範囲での除算 | %/% |
整数範囲での除算を行った時の剰余 | %% |
べき乗 | ^ |
変数の代入:何度も使う変数には、名前を付ける
こちらでは、R言語で変数を活用する場合のプログラミングについて解説していきます。
そもそも変数とは、データを一時的に記憶する場所のことを差し、変数に設定した値を変数名を呼び出すことで設定した値を呼び出すことが可能です。
R言語では、「=」や「<-」などの演算子を活用します。以下は、変数活用の一例です。
> a=123
>
> a
[1] 123
>
> #デジタルマーケティングU(コーディング規約)では「<-」での変数定義が推奨されています
> b<-456
>
> b
[1] 456
>
> a+b
[1] 579
> a-b
[1] -333
> a*b
[1] 56088
> a/b
[1] 0.2697368
>
変数では、大文字・小文字の区別がされます。変数を管理するためにも、変数設定時に大文字・小文字の活用に関して各自コーディングルールを設定するとよいでしょう。
> b
[1] 456
>
関数:何らかのインプットに対して処理を加えアウトプットを返すもの
関数とは、インプットされた値に対して定められた独自の処理を実行して結果を返す命令のことをさします。
R言語にはさまざまな関数があり、目的に合わせて活用されています。こちらでは、基本的な関数の一部を紹介していきます。
> floor(1.9)
[1] 1
>
> # 平方根√2
> x <- sqrt(2)
> x
[1] 1.414214
ベクトル:cという関数を使って定義
ベクトルとは、同じデータ型が1つ以上格納されているオブジェクトのことを意味します。
R言語では、このベクトルを定義することが可能です。こちらではベクトルを定義するプログラミングについて紹介していきます。
> c(1, 2, 3, 4, 5)
[1] 1 2 3 4 5
> # 整数の順列はこうも書けます
> 1:5
[1] 1 2 3 4 5
> # 整数の順列はこうも書けます
> 1:5
[1] 1 2 3 4 5
リスト:他の種類の型(整数、文字列)を混ぜる
2種類以上の型をもつ要素を格納する場合には、list関数を活用します。
list関数は、複数の要素をもつリストオブジェクトを作成するための関数で、それぞれの型を保持したまま抽出可能です。
また前述のc関数でも異なったデータ型を記入できますが、その場合すべて文字列型に変換されてしまうことに注意しましょう。
[[1]]
[1] 1[[2]]
[1] “a”[[3]]
[1] 3.14
>
> # ベクトルでは他のデータ型は混ぜられません
> # (文字列と数値を混ぜると、全部文字列型に変換されます)
> c(1, “a”, 3.14)
[1] “1” “a” “3.14”
データフレーム:「同じ長さのベクトル」が入った「リスト」
データフレームとは、同じ長さを持つベクトルから構築されるリストのことです。
作成にはdata.frame関数が用いられています。変数に代入すれば、「変数$ベクトルの変数」で指定したベクトルの要素全体を適用可能です。
data.frame関数のプログラミング例は以下の通りとなります。
> 体重 <- c(69.5, 75.0, 56.5)
> X <- data.frame(身長, 体重)
> X
身長 体重
1 168.5 69.5
2 172.8 75.0
3 159.0 56.5
>
> # リストと同様、$で値を取り出します
> X$身長
[1] 168.5 172.8 159.0
> # 取り出した値はベクトルなので、演算を要素全体に適用できます
> X$身長 / 100
[1] 1.685 1.728 1.590
csvやExcelファイルを読み込む
R言語を活用したデータ解析では、csvやExcelファイルを読み込むケースは珍しくありません。
こちらでは、csvやExcelファイルを読み込むプログラミング例を紹介していきます。
> # read.csv(“ファイルパス”)で読み込み可能です
> X <- read.csv(“D:/work/X.csv”, stringsAsFactors = FALSE)
図を書く:ヒストグラム(度数分布表)を書いてみる
R言語では、設定したデータをもとにさまざまなグラフが描画可能です。
例えばヒストグラムや散布図、棒グラフ、箱ひげ図、円グラフなどはRの描画関数を活用することで作成できます。
こちらでは、hist関数を用いたヒストグラムの作成方法をみていきましょう。
> x <- rnorm(1000000)
> # ヒストグラムを描く
> hist(x)
R言語の入門本10選!
こちらでは、R言語のおすすめ入門法を10冊紹介していきます。
R言語を学習するうえで本を活用する場合は、学習目的に適しているか、R言語活用に必要な統計学の知識も学べるかなど自身にマッチした入門書になっているかチェックして選びましょう。
RStudioではじめるRプログラミング入門
税込:2860円
この本は、統計を使わずに、純粋にR言語をプログラミング言語として学習することをコンセプトにした入門書です。
統計学に関する難しい知識は不要で、3つのプロジェクトを通してRStudioの活用やR言語によるプログラミングスキルの習得ができます。
R言語やRStudioの知識に関して、プロジェクトを通して逐一解説が入るため、完全なプログラミング初心者の人や統計分析の知識を知識を得る前にR言語をしっかり学びたい人におすすめです。
はじめてのR: ごく初歩の操作から統計解析の導入まで
はじめてのR: ごく初歩の操作から統計解析の導入まで
税込:1760円
この本は、はじめてR言語に触れる初心者の人を対象にR言語を使った統計解析のはじめの一歩となる入門書です。
Rのインストール方法や計算と統計解析方法、データファイルやエディタの活用方法とR言語を活用していくうえで基本的な知識やスキルを学べます。
統計解析とR言語の基本をこの1冊で抑えられるため、R言語での統計解析を始めようと考える初心者の人におすすめです。
RユーザのためのRStudio実践入門
税込:3278円
この本は、R言語の統合開発環境であるRStudioと、モダンなデータ分析を実現するRパッケージのコレクションであるtidyverseの入門書です。
R言語の基本からデータの収集・整形・可視化・レポーティングといったデータ分析ワークフローの各プロセスを詳しく解説しています。
RやRStudioを活用してモダンな分析環境を構築したい人や分析フローを意識した統計解析を実装したい人は、この本の知識は役立つでしょう。
Rによるやさしい統計学
税込:2970円
この本は、統計学の理論とRでの操作手順やアウトプットの解釈に関して解説してくれる入門書です。
統計の知識とRの操作に関する知識が無駄なく丁寧に解説されています。巻末の練習問題で勉強した内容の確認ができることも特徴です。
文科系の学部学生を対象としているだけあって、理論や基礎に関して丁寧に解説されているため、R言語に興味があるけどプログラミング経験の有無で敬遠してきた人にもおすすめの1冊です。
R初心者のためのABC
税込(中古品 2024年6月時点):3500円
この本は、Rがまったくはじめての人向けに記された入門書です。
プログラミングやコードとはなんなのか、どのようにコードを書けばよいのかR言語だけでなくプログラミングの基本の第一歩を丁寧に解説されていることが特徴になります。
R言語やプログラミングに関して重点的に触れられており、統計学に関しては網羅されていません。そのため、R言語やプログラミングの基本から学びたい人におすすめです。
Rによるデータサイエンス(第2版)
税込:3960円
この本は、分析手法である【因子分析・ネットワーク分析・深層学習など】をすぐに試したい人や、Rを使うとどんなデータ分析ができるか、Rを動かしながら幅広いデータ解析手法・機械学習法を体感的に学びたい人向けです。
R言語によるデータ解析の入門書として、初版から幅広い支持を受けてきた本の改訂版でR言語のバージョンアップへの対応や、深層学習などに対応しているパッケージの解説が追加されています。
Rグラフィックス クックブック(第2版)
税込:3960円
この本は、R言語のパッケージ[ggplot2]を使用して、いろいろなグラフを作成するためのレシピ集です。基本的なグラフから始まって、より複雑なグラフ・地図の作成方法まで網羅していて、実用的な一冊です。
初版の発刊から6年が経ち、[ggplot2]だけでなく、R言語や関連パッケージ、ツールのバージョンアップにしたがって全面改訂されています。こうしたいという実際の要望に応じた解決法を提示し、描きたいグラフがすぐに描ける一冊です。学生・プログラマ・研究者などデータ処理やデータ分析に関わるすべての人におすすめです。
R統計解析パーフェクトマスター
税込:3190円
この本は、統計や機械学習の手法を、R言語によるプログラミングを通じてを学ぶことができる解説書です。データサイエンティストを目指す人に向けて、Rの基本操作から統計や機械学習の基礎までをわかりやすく解説しています。この本は、以下のポイントでおすすめです :
- 1. 包括的な内容: 統計解析や機械学習の基本から応用まで幅広くカバーしています。
- 2. 実践的なアプローチ: Rのプログラミングスキルを身につけながら、実際のデータ分析に役立つ手法を学べます。
- 3. 初心者向け: Rの基本から始めるため、プログラミング初心者でも理解しやすい内容です。
この本は、統計解析に興味がある方やデータサイエンティストを目指す方におすすめです。
入門Rによる予測モデリング
税込:3080円
現代ではデータサイエンスはかなり発展してきました、この本はその現代に「リスク」を統計的に扱う方法を実例付きで伝授しています。Rを使った実践的なトレーニングも多く取り上げられており、予測モデリングと機械学習の基本から応用まで幅広くカバーしています. この本は、実務上リスク管理のためのデータ分析に携わる方におすすめです。
R言語ではじめるプログラミングとデータ分析
税込:3300円
この本は、R言語の入門書で、初心者向けです。R言語は無料で使えるプログラム言語でデータ分析に秀でています。
この本では、R言語の初歩とデータ分析の基本を解説しています。また、【Tidyverse】と呼ばれる「データ分析の生産性を上げてくれる便利なパッケージ群」についても詳しく紹介しています。
R言語の入門が学べる学習サイト
R言語は学習サイトを活用した学習方法もおすすめです。こちらでは、R言語を学習するのに適した学習サイトを紹介していきます。※価格はすべて税込・2024年7月時点のもの
Udemy
料金体系 | 価格 | 無料体験 |
コース(動画)の買い取り 定期プランは一部の人のみで価格の記載ない。ビジネスプランあり。 | 無料~ ビジネスプランは5人から一人41,800円 | 無料のコースもあり |
udmyは、世界最大規模の動画学習プラットフォームで世界中の学びたい人と教えたい人をつなげてくれるサービスです。
さまざまなジャンルの教育コンテンツが登録されており、R言語だけでも約2,000件の教育コンテンツが購入できます。
初級者向け、中級者向けと習熟度にあわせて自分で選んで学習でき、購入後は何度でも振り返ることが可能です。
講座1本あたりの金額は様々ですが、数千円で購入できるものから数万円で購入できるものと料金の幅が広いため、自身の学習目的にあったものを選ぶようにしましょう。
ドットインストール
料金体系 | 価格 | 無料体験 |
フリー・プレミアム・法人コース | フリーは無料・プレミアムは月1280円・法人は月2680円 | 無料のレッスンあり |
ドットインストールは、プログラミング学習サービスですべてのレッスン動画が3分以内で気軽に学習できることが特徴です。
月額1,280円のプランを選択することでR言語のレッスンを含むすべてのプログラミングレッスンを学習できます。
スマートフォンなど端末を選ばずに学習できるため、移動中などに学習することが可能です。
R言語の入門レッスンとして13コンテンツが公開されており、十分に学習ができれば解約することもできます。
Progate
料金体系 | 価格 | 無料体験 |
フリー・プラス・プレミアム・法人コース | フリーは無料・プラスは月990円・プレミアムは月1280円(税込)・法人は月2680円(税込) | 無料のレッスンあり |
Progateが目指すことは、【初心者でも独学で、挫折せずに学べること。】・【本物のスキルが身につき 「創れる」ようになること。】・【プログラミングで夢を叶えたい人が、本当に夢を叶えられるように、なることです。】
紙の本よりも直感的で、動画よりも学びやすい、「スライド学習」を採用しています。そのことにより、自分のペースで学習できますし、復習しやすいことも簡単です。
また、WEB上で実際にコードを作成して、実行までできるので、プログラムの環境を準備することなくすぐにつかうことができます。さらに自分一人でも基礎から実践的な内容まで、学んで作ってみることができます。
Qiita
料金体系 | 価格 | 無料体験 |
無料 | 無料 | いつまでも無料 |
Qiitaは学習サイトというよりは技術情報の記事が蓄積されているナレッジデータベースといったものです。それだけに実際の現場の技術者の人の記事や大学などでの実際に教えている情報などが手に入るので独学をするに使うととても便利です。例えば以下のような記事があります。
- 1.「R言語の基本的な文法まとめ」: R言語の基本的な文法について詳しく解説されています。電卓としての使い方からベクトル、配列、因子型、リストなどをカバーしています。
- 2.「R言語でデータ可視化を学ぶためのチュートリアル」: R言語を使ってデータ可視化の基本を学ぶためのチュートリアルです。ggplot2パッケージを活用してグラフを作成する方法が詳しく解説されています。
- 3.「R言語での機械学習入門」: Rを使った機械学習の基本を学ぶための記事です。caretパッケージを使ったモデルのトレーニングや評価方法が紹介されています。
- 4.「R言語でのWebスクレイピング入門」: Rを使ってWebページからデータを収集する方法を学ぶための記事です。rvestパッケージを使ったスクレイピングの手法が解説されています。
- 5.「たのしいR言語入門」:5年前の記事なので、少し古いですがいくつものR言語プログラムのコード例が紹介されています。
以上のような記事を読んで、R言語を学ぶことができます。
統計WEB
料金体系 | 価格 | 無料体験 |
無料 | 無料 | いつまでも無料 |
統計WEB
統計WEBは統計学の学習や調査に役立つサイトです。R言語でプログラムをするにしても、やはり、統計の手法が理解できていないと使いこなせないということがあります。統計WEBでは以下のような内容がおすすめです。
- 1. 統計学の時間: 統計学の基礎から応用までを丁寧に解説しています。大学で学ぶ統計学の基礎レベルである統計検定® 2級の範囲をほぼ全てカバーしています。
- 2. おすすめの書籍と電卓: 「統計学入門(基礎統計学)」や「はじめての統計学」など、統計学に関する4冊のおすすめ書籍が紹介されています。
以上のような内容で、統計学の勉強ができます。統計学を学ぶことでR言語のプログラミングが上達します。
R言語 入門のまとめ
R言語は統計解析やグラフィック分野に特化した無料で利用できるプログラミング言語です。
統計解析やデータの可視化、機械学習ができるため昨今データサイエンスやデータアナリティクス分野で注目を集めています。
特にデジタル化の影響でデータを用いた意思決定が重要視されている昨今において、統計解析に特化したR言語の需要は高いといえるでしょう。
R言語を活用したデータ解析などに興味がある人は今からでも学習を始めることがおすすめです。
R言語やプログラミング自体が初めての人でも理解しやすい入門書や学習サイトを活用してスキルを身につけましょう。
jiteraでは、R言語に関する質問や案件のご相談を受け付けております。
気になることや不安点・不明点のお問い合わせや、R言語を用いた開発のご依頼についてお問い合わせください。