40代からのフリーランスエンジニア向け・案件検索サイト【SEES】
R言語はデータ解析や統計の分野で人気のあるオープンソースのプログラミング言語です。本記事ではR言語でのプログラミング入門として、概要、環境構築と実行、基礎文法やおすすめの学習方法などについて紹介します。
<業界実績18年>
ミドル・シニアフリーランス専門
エージェントSEES
40~60代以上のシニアエンジニア案件探しは、私たちにお任せください!
ご登録者様限定で、Webに公開していない非公開案件をご提案いたします。
目次
データ解析や統計が行えるR言語は、データサイエンスやAI分野で活用されるプログラミング言語です。今後、活躍のフィールドを広げたいエンジニアにとっては、習得を目指したい言語といえます。
一方で、R言語はデータの解析や統計処理に特化しており、汎用的な言語ではありません。この点が、プログラミングの経験がある人でも、習得にハードルを感じてしまいがちです。
本記事では、R言語によるプログラミングを習得したい方に向けて、R言語の概要や環境構築、ツールの使い方、基礎文法などの入門レベルの情報を提供します。R言語習得の第一歩としてご活用ください。
R言語は統計解析向けに作られたプログラミング言語です。オープンソース、フリーソフトウェアのため、誰でも無償で利用することができるため、世界中に多くの利用者が存在します。
R言語の概要
R言語は、1993年にニュージーランドの大学で開発されました。その後はR Development Core Teamという団体によって開発が続けられています。
正式な名称は「GNU R」ですが、日本国内ではR言語またはRと呼ばれています。
インタプリタ型の言語ですが、ライブラリはC言語等で組み込み関数を活用することにより高速な処理を実現できます。マルチプラットフォームに対応しており、Linux、Windows、macOSなどで動作します。
R言語では、データの統計、解析処理とその結果のグラフィカルな表示が可能です。一方で、汎用性はなく、Webやスマホアプリの開発には適していません。
これらの特徴から、データサイエンスやAI(機械学習)でR言語は活用されています。データサイエンティストやAIエンジニア、機械学習エンジニアを目指す方にとって適した言語といえます。データサイエンスやAI分野は将来性が高く、人材が不足していることから、エンジニアにとっては、今後の活躍に向けた選択肢の一つです。
R言語を利用する場合には、PCを用意し、実行環境を構築する必要があります。以下では、環境構築および実行のための手順を記載します。
※2024年9月時点の情報です。サイトに更新が合った場合には、適宜読み替えて利用ください。
R言語の実行環境はThe R Foundationのサイトからリンク先にジャンプできます。日本でダウンロードする場合には、日本向けのサイト(山形大学のサーバ)からダウンロードしましょう。
実行環境のOSごとにインストールモジュールが違うため、利用環境に合わせて選択ください。Windowsの場合には「Download R for Windows」からWindows用のページに移動します。
※以下は、Windowsの場合の記述です。環境に合わせてご利用ください。
ページの「base」をクリックして次のページへ。
「Download R-4.4.1 for Windows 」をクリックすると、インストール用のバイナリモジュールのダウンロードが開始します。ファイル名は「R-4.4.1-win.exe」でした。
※特に設定を行っていない場合にはダウンロードフォルダにダウロードモジュールが保存されます。
ダウンロードしたインストールモジュールを実行してインストールを行います。Windowsの場合は、R-4.4.1-win.exeをダブルクリックするとインストールが開始します。
※ファイルの書き込みや言語選択などが発生するため、適宜選択してください。
日本語で利用する場合はプルダウンメニューから「日本語」を選択して「OK」をクリックしてください。
重要な情報を確認し、「次へ」をクリックしてください。
インストール先のフォルダを指定してください。特に変更する必要がなければ、デフォルトで設定されているフォルダで問題ありません。フォルダが指定できたら、「次へ」をクリックしてください。
インストールするコンポーネントを選択します。通常「利用者向けインストール」をプルダウンメニューから選択しておきます。選択できたら、「次へ」をクリックしてください。
起動時のオプションの設定を変更したい場合はラジオボタン「はい」を選択します。デフォルトでよければ「いいえ」を選択して、「次へ」をクリックしてください。
Windowsの場合は、スタートメニューに追加する先のフォルダーを指定します。指定できたら、「次へ」をクリックしてください。
Windowsの場合、アイコンの追加やレジストリの追加を指定できます。指定できたら、「次へ」をクリックしてください。
ダイアログに合わせて選択・入力を行い、下記画面が表示されたら入力完了です。「完了」をクリックしてインストールを終了してください。
Windowsの場合、Windowsメニューや起動アイコンから起動します。下記の画面が表示されていれば正しく起動できています。終了する場合には、「ファイル」→「終了」で終了します。
R言語では、コンソールやファイルにコードを記述することができます。コンソールは、起動時に立ち上がった「R Consorl」とタイトルのついたウィンドウです。
コンソールでは「>」記号の右側にコードを書けます。
例えば、非常に単純な足し算をしてみます。
>1+1
コンソールでコードを記述し、Enterを押下することで記述した一行分のコードを実行できます。
>1+1
[1] 2
1+1の結果は「2」と出力されました。
R言語でのプログラミングのための環境ができ上ったら、次は実際のコードの書き方を身につけます。まずは、基本的な記述方法を覚えましょう。
R言語では一般的な四則演算が可能です。演算に使う記号は下記となります。
演算 | 記号 |
加算 | + |
減算 | - |
乗算 | * |
除算 | / |
コンソール上で任意の計算をしてみた例です。コードを記述してEnterキーを押下すると演算の結果が次の行に出力されます。
> 1+2
[1] 3
> 5-3
[1] 2
> 4*7
[1] 28
> 8/3
[1] 2.666667
プログラムの中では数値や文字などの値を一時的に格納して利用します。この値を格納するための器となるのが変数です。
この変数に値を格納することを代入といいます。R言語では代入には「
R言語では変数の定義時に型の指定や変数の宣言をする際のキーワードなどはありません。
下記では、例として「num」という変数に123を代入し、その後100を加算した結果を出力しています。
> num> num+100
[1] 223
R言語では多数の値を扱ってデータの解析を行います。多量のデータを扱う際に一つづ変数を作成していてはコードが煩雑になるため、複数の値を格納できるベクトルという概念が存在します。
ベクトルを使用する場合には「c()」という組み込み関数を利用します。「c()」の括弧の中にはベクトルが持つ値を記述します。複数の値を指定することができ、その際には「,」区切りで記述します。また、連続した値を指定することも可能です。1から10までの値を指定する場合には「:」という記号を用いて、「1:10」と記述します。「c(1:10)」は「1,2,3,4,5,6,7,8,9,10」の値を持ったベクトルです。
下記の例では、「bec1」という変数に値「1,2,3」を持つベクトルを代入し表示、「bec2」という変数に値「1,2,3,4,5,2,3,4」を持つベクトルを代入して表示しています。
> bec1 bec1
[1] 1 2 3
> bec2 bec2
[1] 1 2 3 4 5 2 3 4
このベクトルを用いた演算、ベクトル同士の演算などもR言語では行えます。
R言語では、特定の条件で分岐する処理を記載することができます。条件分岐では、if文およびswitch文が利用できます。
if文は「if(条件){処理}」の形で記載します。また、elseifによる条件の追加やelseでの条件に該当しない場合の処理の記載も可能です。条件の中には比較演算子による比較式などが記載できます。
下記の例では、変数numの値によってifでの分岐を行っており、numが5よりも大きい場合とnumが5以下の場合で出力が変わります。numへ代入する値で、動きが異なるプログラムです。
> num if(num > 5){
+ "num is large number!"
+ }else{
+ "num is small number!"
+ }
[1] "num is large number!"
条件分岐と繰り返しの組み合わせにより様々な処理を自動化することができます。R言語でも同様です。
R言語の繰り返し処理にはfor文とwhile文があります。for文は繰り返し回数が決まっている場合に利用し、while文は特定の条件にあてはまる間は繰り返しを行う処理です。
下記の例では、1から10までカウントを行います。変数iに1から10を代入して繰り返し処理が実行されます。
> for(i in 1:10){
+ print(i)
+ }
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
[1] 6
[1] 7
[1] 8
[1] 9
[1] 10
ただし、注意点としてR言語のwhile文、for文を使った繰り返しは処理速度が遅く、階乗や累積和、組み合わせを求める処理などは組み込み関数が提供されているため、こちらを利用することが推奨されます。
プログラムでは特定の処理を何度も利用する場合があります。この処理を関数というブロックとして定義しておき、後で呼び出すことが可能です。
R言語では関数の記述にはfunctionというキーワードを用います。関数には引数や戻り値の設定も可能です。
下記の例では、printMsgという関数を定義し、for文で3回繰り返し呼び出しています。printMsg内では"Hello!"と出力しています。
> printMsg for(i in 1:3){
+ printMsg()
+ }
[1] "Hello!"
[1] "Hello!"
[1] "Hello!"
基本文法を覚えたら、処理の結果の視覚化やより複雑なデータの解析処理に挑みましょう。
R言語では、処理結果をグラフなどでグラフィカルに表示する処理が組み込み関数として用意されています。実用レベルのプログラムにするのであれば、結果の見た目は重要です。
また、R言語はデータの統計解析用のプログラミング言語です。統計学的な処理を簡単に行える組み込み関数などが提供されています。統計学を学習しながらR言語でのプログラムで結果を確認することで理解が深められるでしょう。
グラフの作成やデータの解析については本記事では扱いませんが、「R言語学習におすすめの書籍・サイト」を参考にチャレンジしてみてください。
R言語は実行環境を用意すれば利用することが可能です。しかし、コンソールベースのプログラミングよりもさらに便利な開発環境が提供されています。いわゆる統合開発環境(IDE)を利用することで効率的な開発を行いましょう。R言語の統合開発環境としてRStudioが著名です。
RStudioはR言語(およびPython)用の統合開発環境と呼ばれるソフトウェアです。コード記述の際に文法ルールのサポートをしてくれるエディタやデバッグ機能などを提供してくれます。
RStudioには、PC上にインストールして利用する形式とクラウド上で利用する形式が存在します。またPC上で利用する形式でも、オープンソース版とデスクトップPro版が存在します。オープンソース版は無償で利用可能です。
ダウンロードはこちらのページから。
SEESでR言語関連の案件を探す
本記事では、入門編としてR言語を扱うための簡単な導入を説明しています。しかし、実践できるレベルに達するには更なる学習が必要となります。
本項では、R言語の更なる学習に向けておすすめの書籍やサイトを紹介します。本記事内容に沿って行ったR言語の環境を利用してプログラムを動作させながら学習することで理解を深めてください。
はじめてのR: ごく初歩の操作から統計解析の導入まで(北大路書房、村井 潤一郎)
R言語の初心者が入門書として利用できる書籍です。コンピュータの操作についても丁寧に記載されており、R言語のとりかかりに適しています。統計学的な処理についてはそこまで深く記載されていないため、より上のレベルの知識を求める場合には適していません。
RStudioではじめるRプログラミング入門(オライリージャパン、Garrett Grolemund、大橋 真也、長尾 高弘)
「統計を使わずに、Rを純粋にプログラミング言語として学ぼう」というコンセプトの書籍です。プログラミングに関する知識、統計学的な知識がない人でも効率的に学習できます。RStudioの利用もサポートしており、プログラミングスキルとデータサイエンスの基礎までを身につけられます。
野村俊一氏によるR言語およびRStudioについての入門的解説サイトです。とても分かりやすくまとまっています。
株式会社AVILENの運営するAI特化型メディア内のR言語に関する記事です。R言語学習をステップごとにまとめたコンテンツは統計手法の実現方法にもふれており、データサイエンスを身につけたいひとにもおすすめです。一定の統計学的な知識が前提となります。
動画学習コンテンツ配信サイトです。R言語に関するコンテンツだけでも330件(2024/09/12時点)が配信されており、自分のレベルや学びたいコンテンツが選べます。
R言語への入門に関して、よくある質問をまとめました。
これからR言語の学習をするかどうか迷っている方は、一歩を踏み出す参考にしてください。
R言語はデータ分析、解析を目的として開発されたプログラミング言語です。データの統計・解析およびその結果のグラフィカルな表示に特化しています。確率分布や回帰分析などの統計的な処理を組み込み関数やパッケージなどを利用して容易に実現でき、機械学習などにも活用可能です。
R言語はオープンソースで無償で利用することができます。パソコンを用意して、実際に簡単なプログラムから書いて覚えていくと良いでしょう。本記事内の手順やおすすめ書籍、サイトなどが入門には適しています。
R言語の学習はパソコンとネット環境があればだれでも気軽にはじめることが可能です。
R言語の実行環境については、オープンソースのフリーウェアのため無償で利用可能です。統合開発環境RStudioもオープンソース版は無償で利用できます。
学習のための情報もインターネット上に充実しており、R言語のプログラミングそのものは以前より学習しやすい環境が整っているといえます。統計学的な知識およびAI、機械学習につなげるための知識を得るには一定の計画的な学習が必要です。
R言語は統計解析に特化したプログラミング言語です。データサイエンスやAI分野で活用されています。
R言語が利用されるデータサイエンスやAIは今後も将来性が高い分野であり、活躍の場を広げたいエンジニアにとっても有用な言語といえます。無料で利用でき、情報も充実してきたことから学習ハードルも下がっているため、本記事を参考に第一歩を踏み出してみてください。
40代~60代向けミドル・シニアフリーランスエンジニアの案件サイト『SEES』
40代~60代でエンジニアとして活躍したいと考えている方におすすめなのが、株式会社Miraieが運営する、ミドル・シニアエンジニア向けの案件サイト『SEES』(https://miraie-group.jp/sees/)です。
SEESとは-Senior Engineer Entrustment Service-の略称で、40代~60代エンジニア向けの案件紹介サービス。
エンジニア業界は、40代以上の転職はなかなか厳しい市場だと言われています。
転職ではなくフリーランスとして案件を獲得することを視野にいれてみてもいいかもしれません。
SEESの場合、掲載している案件は主に年齢不問ですので、年齢制限に関係なく、純粋にスキルや希望条件での案件を探すことが可能です。
会社員よりも個人事業主としてプロジェクトを請け負う形であれば、働き方としても選べる立場にありますよね。
給与の支払いサイトは30日で統一されています。
また、取引社数が5,000社以上と多く、新しい案件が集まりやすくなっています。
さらに、SEESに登録をすると最新・未公開案件を獲得することができます。
独立してフリーランスになっても仕事が途切れる心配はありません!
『SEES』(https://miraie-group.jp/sees)を利用して新しい働き方を手に入れてみては…!?
皆さまから選ばれてミドル・シニアエンジニア向け検索サイト三冠達成しております!
株式会社Miraieが運営する『SEES(https://miraie-group.jp/sees)』は、 「シニアエンジニア向け検索10サイトを対象にしたサイト比較イメージ調査」のなかで、
上記3項目においてNo.1を獲得ししております。
株式会社Miraie
2007年設立のシステム開発会社。首都圏を中心にWeb・IT関連事業、コンサルティングサービス、人材派遣サービスなどを展開。 SES事業や受託開発などを中心にノウハウを蓄積しながら、関連事業へとビジネスの裾野を広げています。
監修者インフォメーション
目次を開く