
R言語を学習しようかどうか迷っています。
統計解析に特化したプログラミング言語というのは知っていますが、
R言語でできることって何があるのでしょうか?
あと、R言語とPythonの違いについても知りたいです。
今回はこのような疑問に答えていきます。
ビッグデータを有効活用するための手段として、 R言語が注目されています。 統計解析という1つの分野に特化したプログラミング言語としては、 異例の人気ぶりです。
そこでこの記事では、R言語でできることと、 よく比較されるPythonとの違いについて説明します。
R言語とは

R言語は統計学者が作ったプログラミング言語で、 統計解析(データ分析)に特化した言語です。 元々は学術分野で使われていましたが、 R言語の優秀さが広まるにつれ民間企業にも広まっていきました。 GoogleやFacebookもR言語を使用しています。
最新のデータ処理・分析のためのツール(パッケージ)がそろっており、 ソースコードが単純でありながら 本格的なデータ分析ができるプログラミング言語 として人気があります。
R言語でできること
できること①:統計解析

R言語でできることとして、まずは「統計解析」があげられます。
統計解析とは大量のデータを収集・分析して、 データからパターンや傾向を見つけ出す科学です。
R言語は統計解析を行うために作られた言語ですから、 これがR言語のメインの使用目的です。
できること②:機械学習

機会学習は応用統計学ともいわれるくらいなので、 統計学とほとんど同じですが、目的が異なります。
統計学はデータの傾向やパターンを 「説明」することに重点を置いています。 一方、機械学習は過去のデータから未来を 「予測」することに重点を置いています。
さらに機械学習の一分野として「ディープラーニング」があります。 ディープラーニングもR言語でできます。
できること③:グラフ作成

大量のデータを収集・分析した後は、 その結果を見やすくアウトプットする必要があります。 アウトプットのためのグラフ作成もR言語でできることの1つです。
R言語はグラフを作成する機能が充実しています。
折れ線グラフ、円グラフ、ヒストグラム、数学関数グラフなど
いろいろな形式のグラフを出力できます。
さらに作成したグラフを画像としてjpgやpng形式での保存もできます。
R言語とPythonの違い
R言語とよく比較される言語としてPythonがあります。
R言語が統計解析に特化したプログラミング言語なのに対し、
Pythonは統計解析もできる汎用的なプログラミング言語です。
ですから、PythonでWebアプリケーションを作ることもできますし、
Webデータのスクレイピングをすることもできます。
ではどちらを学ぶのがいいのでしょうか?
どちらかと言うと、R言語は統計解析を専門的に研究する研究者向けの言語です。
それに対してPythonはデータ分析だけでなく、
Webアプリケーションの作成なども行うエンジニア向けの言語です。
R言語のデメリット
先程Pythonとの違いでも書いた通り、 R言語は統計解析に特化しているプログラミング言語のため汎用性がありません。 ですからWebアプリケーションなどを作りたい場合は他の言語を学ぶ必要があります。
他には大容量データの処理を苦手としています。 データをメモリに載せて処理するため、 コンピュータのメモリ量が少ないと処理しきれなくなります。 通常のデータを扱う分には問題ありませんが、 大規模データを扱う場合は注意が必要です。