「Rプログラミング」とは何ですか?
Rプログラミングは何ですか? (What is R Programming?)
Rは現在、統計プログラミングのための最も人気のあるスクリプト言語の一つです。2010年代初頭からRプログラマーの需要は絶えず増加しており、Rは依然としてデータサイエンティストの間で頼りにされるプログラミング言語の地位を保っています。
最近ではRも深層学習に適応されており、これにより多くの統計学者がそれぞれの専門分野で簡単に深層学習に取り組むことが可能となりました。その結果、Rは現在急速に進展しているAIシナリオにおいて不可欠な一部となりました。
おすすめの読み物:Pythonデータサイエンスライブラリ
Rプログラミング言語の歴史
Rは、統計計算のために開発されたAT&Tの前身言語S(Sは統計を表す)を持っています。AT&Tは、1976年にSの開発を開始し、以前はFORTRANライブラリとして実装された内部統計分析環境の一部として取り組んでいました。
Sの背後にいた男性はジョン・チェンバーズでした。単一の文字名「S」は、当時のプログラミングにおける普及していたC言語からインスピレーションを受けています。
Rは1992年にニュージーランドのオークランド大学で始まったプロジェクトで、Ross IhakaとRoss Gentlemanによって開発されました。最初のバージョンは1995年にリリースされ、最初の安定したベータ版は2000年に登場しました。
最初、Rは既存のSの機能にレキシカルスコープセマンティクスを追加した点でSとは異なっていました。Rという一文字の名前は、再びSからインスピレーションを受けて、両作者のファーストネームの最初の文字を取りました。
RはGNUパブリックライセンスの下で開発され、公開配布が可能です。
S言語は後にTIBCO社によってAT&Tから購入され、いくつかの高度な分析機能とOOP機能が追加され、S-plusとして開発されました。
Rプログラミングの特徴
- Platform independent – Runs on several computing platforms such as Windows, Linux, and Mac OS.
- Portable – Easy to run on mobiles, tablets and gaming consoles.
- Frequent releases – Resulting in timely bug fixes and less frustration.
- Superior Graphics – Compatibility with aesthetic graphical libraries like ggplot2 and plotly ensures publication-quality graphics visualizations.
- Versatility – Hundreds of packages for specific purposes being developed and improved on a daily basis by the developer community.
Rプログラミングの利点
RはSやS-plusと比べて依然として統計プログラミング言語としてより支配的に使用されており、その理由は多くの利点に由来しています。
- R was developed with the intention of building an open-source implementation of S, therefore R is and will always remain an open-source software.
- R has thousands of professional scientists and statisticians constantly using and improving it.
- R is compatible with Windows, Mac, and Linux. It runs almost anywhere and doesn’t consume much space.
- In addition to the statistical processing features, R can also be used as a general programming language with functional programming and object-oriented programming capabilities.
- R has far more superior visualization features compared to several commercial products, due to the involvement of ggplot2 and plotly.
- The graphics provided by R are more beautiful and preferred by experts all over the world.
- R isn’t an innately graphical user interface based environment. It only takes commands as inputs, making it easy to save commands as scripts and port across domains.
- R sessions are efficiently managed. Your command history and data are saved between sessions, therefore you can pick up where you left with little hassle.
- R has a rich and responsive online developer community.
Rの制限
Rは最も嫌われていないプログラミング言語と考えられています。全ての利点にもかかわらず、Rも他の言語同様に完璧なわけではありません。Rの学習に飛び込む前に、その欠点を頭に入れておくと役立つでしょう。
- Steep Learning Curve: R is not an easy language to get started with. Beginners find it hard to get their feet wet due to the command-line interface. IDEs like RStudio will help overcome this limitation to some extent. Additionally, the wide array of packages can be confusing to beginners.
- Hungry for Physical Memory: Unlike its strong contender Python, R stores all its data in the physical memory. This makes it hard to handle huge datasets. But fortunately, Hadoop integration for R has improved a lot these days, alleviating the issue to a large extent.
- Slower execution: R would need a lot of optimization before your code can run as fast as it does on MATLAB or Python. A strong understanding of the internal working of objects is needed when designing a program to avoid slow execution.
Rの利用可能性
RはCRANプロジェクト(Comprehensive R Archive Networkの略)でコマンドラインインターフェース環境として利用できます。ただし、初心者の場合は、いくつかのRのための統合開発環境(IDE)の助けを借りてより速く学ぶことができます。
- RStudio : The most popular IDE for getting started with R. There are both desktop and enterprise versions available.
- StatET : An Eclipse-based IDE for R programming and package building.
- ESS-R project: Supports several statistical packages in addition to R, such as S-Plus, SAS, Stata and OpenBUGS/JAGS.