「R」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (校正(でき・出来)) |
|||
(4人の利用者による、間の10版が非表示) | |||
1行目: | 1行目: | ||
− | [[Category: |
+ | [[Category:科学]] |
[[Category:プログラミング言語]] |
[[Category:プログラミング言語]] |
||
[[en:R]] |
[[en:R]] |
||
5行目: | 5行目: | ||
{{Related|Intel C++}} |
{{Related|Intel C++}} |
||
{{Related articles end}} |
{{Related articles end}} |
||
− | + | [http://www.r-project.org/ R] は統計計算やグラフィック用のフリーのソフトウェア環境です。 |
|
== インストール == |
== インストール == |
||
16行目: | 16行目: | ||
=== 初期設定 === |
=== 初期設定 === |
||
− | 起動プロセスについて詳しく知りたい場合は [http://stat.ethz.ch/R-manual/R-devel/library/base/html/Startup.html Initialization at Start of an R Session] を参照してください。{{ic|R}} のインストール環境のホームディレクトリは {{ic|usr/ |
+ | 起動プロセスについて詳しく知りたい場合は [http://stat.ethz.ch/R-manual/R-devel/library/base/html/Startup.html Initialization at Start of an R Session] を参照してください。{{ic|R}} のインストール環境のホームディレクトリは {{ic|/usr/lib/R}} です。ベースパッケージは {{ic|/usr/lib/R/library/base}} に、'''site''' 設定ファイルは {{ic|/etc/R/}} に存在します。[[ロケール]]が {{ic|R}} セッションの中で {{ic|Sys.getlocale}} と {{ic|Sys.localeconv}} 関数によってアクセスされます。ロケールはシステムで定義したロケールになります。 |
{{ic|R}} セッションを起動するには、ターミナルを開いて次のコマンドを入力してください: |
{{ic|R}} セッションを起動するには、ターミナルを開いて次のコマンドを入力してください: |
||
$ R |
$ R |
||
{{Note| |
{{Note| |
||
+ | * コマンドを実行するには {{ic|Shift+u}} を使います (ターミナルによっては {{ic|r}} で最後に入力したコマンドが再度実行されます)。{{ic|R}} のセッションに入ると、プロンプトが {{ic|>}} に変わります。 |
||
− | * Use {{ic|Shift+u}} for the command (some terminals use the {{ic|r}} letter to repeat the last entered command). Once in your {{ic|R}} session, the prompt will change to {{ic|>}} |
||
− | * '''site''' |
+ | * R のドキュメントにおいて '''site''' は '''system-wide''' を意味します。}} |
システムファイルの設定についてのドキュメントを読むには {{ic|??Startup}} を実行して下さい。{{ic|help()}} を実行するとオンラインヘルプが、{{ic|help.start()}} を実行するとヘルプの HTML ブラウザインターフェイスが、{{ic|demo()}} を実行するとデモを見ることができます。{{ic|q()}} を実行するとセッションを閉じて終了します。 |
システムファイルの設定についてのドキュメントを読むには {{ic|??Startup}} を実行して下さい。{{ic|help()}} を実行するとオンラインヘルプが、{{ic|help.start()}} を実行するとヘルプの HTML ブラウザインターフェイスが、{{ic|demo()}} を実行するとデモを見ることができます。{{ic|q()}} を実行するとセッションを閉じて終了します。 |
||
36行目: | 36行目: | ||
{{ic|R}} は現在の環境の '''.RData''' イメージファイルを作成します。このファイルをダブルクリックすると、{{ic|R}} は自動的に作業ディレクトリをこのファイルのディレクトリに変更します。 |
{{ic|R}} は現在の環境の '''.RData''' イメージファイルを作成します。このファイルをダブルクリックすると、{{ic|R}} は自動的に作業ディレクトリをこのファイルのディレクトリに変更します。 |
||
* コンソールのカラー出力: |
* コンソールのカラー出力: |
||
− | > download.file("http://www.lepem.ufc.br/jaa/colorout_1. |
+ | > download.file("http://www.lepem.ufc.br/jaa/vimr/colorout_1.1-1.tar.gz", destfile = "colorout_1.1-1.tar.gz") |
− | > install.packages("colorout_1. |
+ | > install.packages("colorout_1.1-1.tar.gz", type = "source", repos = NULL) |
}} |
}} |
||
44行目: | 44行目: | ||
重要な変数は [http://stat.ethz.ch/R-manual/R-devel/library/base/html/EnvVar.html Environment Variables R Documentation] で説明されています。 |
重要な変数は [http://stat.ethz.ch/R-manual/R-devel/library/base/html/EnvVar.html Environment Variables R Documentation] で説明されています。 |
||
+ | |||
====R_ENVIRON==== |
====R_ENVIRON==== |
||
起動時に、まず {{ic|R}} は '''site''' と '''user''' の {{ic|.Renviron}} ファイルを検索して[[環境変数]]の設定を行います。'''site''' ファイルは {{ic|/etc/R}} に存在し、configure によって生成されます。 |
起動時に、まず {{ic|R}} は '''site''' と '''user''' の {{ic|.Renviron}} ファイルを検索して[[環境変数]]の設定を行います。'''site''' ファイルは {{ic|/etc/R}} に存在し、configure によって生成されます。 |
||
53行目: | 54行目: | ||
== R パッケージのインストール == |
== R パッケージのインストール == |
||
− | {{ic|R}} にはアドオンパッケージが多数存在し、[http://cran.r-project.org/web/packages/available_packages_by_date.html R のウェブサイト] で閲覧することができます。アドオンパッケージは {{ic|R}} の中から {{ic|'''install.packages( |
+ | {{ic|R}} にはアドオンパッケージが多数存在し、[http://cran.r-project.org/web/packages/available_packages_by_date.html R のウェブサイト] で閲覧することができます。アドオンパッケージは {{ic|R}} の中から {{ic|'''install.packages(c("pkgname"))'''}} コマンドを使うことでインストールできます。{{ic|R}} はパッケージを'''ユーザーごとの'''ローカル設定でローカルにインストールすることも、'''システム全体'''にインストールすることもできます。 |
{{ic|R}} セッションの中から、次のコマンドを実行してユーザーライブラリが存在すること、正しく設定されていることを確認してください: |
{{ic|R}} セッションの中から、次のコマンドを実行してユーザーライブラリが存在すること、正しく設定されていることを確認してください: |
||
78行目: | 79行目: | ||
repos <- "http://cran.rstudio.com" |
repos <- "http://cran.rstudio.com" |
||
− | lib.loc <- " |
+ | lib.loc <- Sys.getenv("R_LIBS_USER") |
update.packages(repos=repos, ask=FALSE, lib.loc=lib.loc) |
update.packages(repos=repos, ask=FALSE, lib.loc=lib.loc) |
||
84行目: | 85行目: | ||
適当な場所に上記のスクリプトを配置して実行可能属性を付与してください。もちろん、リポジトリの URL やライブラリの場所は自由に変更できます。 |
適当な場所に上記のスクリプトを配置して実行可能属性を付与してください。もちろん、リポジトリの URL やライブラリの場所は自由に変更できます。 |
||
+ | |||
+ | {{Warning|[[zsh]] を使用する場合、内蔵コマンドとして '''r''' が存在します。明示的にパスを指定するか ({{ic|/usr/bin/r}}) あるいは別の名前でエイリアスを作成してください。}} |
||
+ | |||
+ | ==== R のアップグレードと同時に自動でアップグレード ==== |
||
+ | R のバージョンが変わると R のパッケージが動作しなくなる可能性があります。以下の pacman フックを使うことで R がアップグレードされたときに必要に応じて自動的にパッケージをアップグレード・リビルドできます: |
||
+ | |||
+ | {{hc|/etc/pacman.d/hooks/r-upgrade.hook|<nowiki> |
||
+ | [Trigger] |
||
+ | Operation = Upgrade |
||
+ | Type = Package |
||
+ | Target = r |
||
+ | |||
+ | [Action] |
||
+ | Description = Updates R packages and rebuilds them if necessary after R upgrade |
||
+ | # Depends is optional if this should depend on another package |
||
+ | Depends = |
||
+ | When = PostTransaction |
||
+ | Exec = Rscript -e 'update.packages(checkBuilt = TRUE, ask = FALSE)' |
||
+ | </nowiki>}} |
||
==設定ファイル== |
==設定ファイル== |
||
− | ホームフォルダで使用する2つのユーザー設定ファイル {{ic|.Renviron}} と {{ic|Rprofile.r}} があります。{{ic|$HOME}} ディレクトリを |
+ | ホームフォルダで使用する2つのユーザー設定ファイル {{ic|.Renviron}} と {{ic|Rprofile.r}} があります。{{ic|$HOME}} ディレクトリをできるだけ乱雑にしたくない場合、{{ic|~/.config/r}} ディレクトリを作成して {{ic|Rprofile.r}} ファイルをディレクトリのルートに配置してこのファイルをあなたの {{ic|R}} のコードに追加すると良いでしょう。 |
===.Renviron=== |
===.Renviron=== |
||
− | + | {{ic|Renviron}} ファイルに記述できるのは冒頭が '''#''' のコメント行か、''name=value'' という形式の行だけです。以下はベーシックな {{ic|.Renviron}} の例です: |
|
{{hc|.Renviron| |
{{hc|.Renviron| |
||
R_HOME_USER = /path/to/your/r/directory |
R_HOME_USER = /path/to/your/r/directory |
||
100行目: | 120行目: | ||
===Rprofile.r=== |
===Rprofile.r=== |
||
+ | 作業ディレクトリの中に {{ic|Rprofile.r}} を配置することで利便性を高めることができます。特定のプロファイルを使うことで、プロジェクトのディレクトリごとに専用の設定ができます。{{ic|R}} で作業ディレクトリに移動すると、ディレクトリ内の {{ic|Rprofile.r}} ファイルが読み込まれます。 |
||
− | For convenient reasons, you can put a specific {{ic|Rprofile.r}} in each of your usual working directories. One facility would be to dedicate one directory per project, with its specific profile. When {{ic|R}} will change to the working directory, it will then read the {{ic|Rprofile.r}} file inside it. |
||
+ | 以下は有用なオプションやコードの簡単なリストです: |
||
− | Here is a very short list of useful options and code: |
||
{{hc|Rprofile.r| |
{{hc|Rprofile.r| |
||
setwd("path/to/startup/directory") # define a start up working directory |
setwd("path/to/startup/directory") # define a start up working directory |
||
115行目: | 135行目: | ||
error = quote(dump.frames("${R_HOME_USER}/testdump", TRUE)) # post-mortem debugiging facilities |
error = quote(dump.frames("${R_HOME_USER}/testdump", TRUE)) # post-mortem debugiging facilities |
||
}} |
}} |
||
− | + | [http://stat.ethz.ch/R-manual/R-devel/library/base/html/options.html グローバルなオプション] を追加することで {{ic|R}} 環境をカスタマイズできます。他のユーザーの設定は [https://stackoverflow.com/questions/1189759/expert-r-users-whats-in-your-rprofile こちら] を参照。 |
|
− | See this [http://stackoverflow.com/questions/1189759/expert-r-users-whats-in-your-rprofile post] for more user configurations. |
||
== R にグラフィカルフロントエンドを追加 == |
== R にグラフィカルフロントエンドを追加 == |
||
135行目: | 154行目: | ||
=== RKWard フロントエンド === |
=== RKWard フロントエンド === |
||
− | RKWard はオープンソースのフロントエンドです。データのインポートや閲覧、一般的な統計テストやプロットなどができます。[[AUR]] の {{ |
+ | RKWard はオープンソースのフロントエンドです。データのインポートや閲覧、一般的な統計テストやプロットなどができます。[[AUR]] の {{Pkg|rkward}} でインストールが可能です。 |
=== RStudio IDE === |
=== RStudio IDE === |
||
144行目: | 163行目: | ||
R ライブラリのパスは {{ic|R_LIBS}} 環境変数で設定しますが、RStudio はこれを無視します。そのため、上述のように {{ic|~/.Renviron}} で {{ic|R_LIBS_USER}} を設定する必要があります。 |
R ライブラリのパスは {{ic|R_LIBS}} 環境変数で設定しますが、RStudio はこれを無視します。そのため、上述のように {{ic|~/.Renviron}} で {{ic|R_LIBS_USER}} を設定する必要があります。 |
||
+ | == エディタ IDE や R に対応しているノートブック == |
||
− | === Rstudio サーバー === |
||
+ | === Rstudio サーバー === |
||
− | {{Accuracy|The {{ic|rstudio-server}} script is broken. This script, located in {{ic|/usr/lib/rstudio-server/bin/rstudio-server}} refers to {{ic|/etc/init}} or {{ic|/etc/init.d}}, which are no longer part of the default Arch install.}} |
||
+ | RStudio Server はリモートの Linux サーバーで動作している R をブラウザから操作できるインターフェイスを提供します。 |
||
− | RStudio Server enables you to provide a browser based interface to a version of R running on a remote Linux server. |
||
− | + | {{AUR|rstudio-server-git}} をインストールしてください。{{ic|/etc/rstudio/rserver.conf}} と {{ic|/etc/rstudio/rsession.conf}} がメインの設定ファイルです。インストールするだけでは作成されないので、自分で作成・編集してください。設定オプションに関する詳細は [https://support.rstudio.com/hc/en-us/articles/200552306-Getting-Started rstudio getting started] ドキュメントを参照。 |
|
サーバーを起動するには、パッケージに含まれている {{ic|rstudio-server.service}} ユニットファイルを[[Systemd#ユニットを使う|起動・有効化]]してください。 |
サーバーを起動するには、パッケージに含まれている {{ic|rstudio-server.service}} ユニットファイルを[[Systemd#ユニットを使う|起動・有効化]]してください。 |
||
156行目: | 175行目: | ||
=== Emacs Speaks Statistics === |
=== Emacs Speaks Statistics === |
||
{{Pkg|emacs}} ユーザーは AUR の {{AUR|emacs-ess}} パッケージを使って R を扱うことができます。 |
{{Pkg|emacs}} ユーザーは AUR の {{AUR|emacs-ess}} パッケージを使って R を扱うことができます。 |
||
+ | |||
+ | === Nvim-R === |
||
+ | {{Pkg|vim}} や {{Pkg|neovim}} のユーザーは {{AUR|nvim-r}} パッケージで R でのコーディングができます。R markdown (Rmd) ファイルの編集やレンダリング、別のペインでの R コードの実行、変数の調査、ヘルプペインの統合など。 |
||
+ | |||
+ | === Cantor === |
||
+ | {{Pkg|cantor}} は KDE によって開発されているノートブックアプリケーションで、R に対応しています。 |
||
+ | |||
+ | === Jupyter ノートブック === |
||
+ | {{Pkg|jupyter-notebook}} は多数のプログラミング言語に対応しているブラウザベースのノートブックです。[https://github.com/IRkernel/IRkernel IRkernel] をインストールすることで R のサポートを追加できます。 |
||
== 最適化されているパッケージ == |
== 最適化されているパッケージ == |
||
− | R に付属しているライブラリ ({{Pkg|blas}}, LAPACK) の多くはマルチスレッドに対応していません。リファレンスの {{Pkg|blas}} パッケージを最適化された BLAS に置き換えることで、R における計算速度が劇的に向上します。ただし最適化された BLAS パッケージは全て何らかの欠点を持っています。例えば商用ライセンスが必要だったり、標準の R の並列処理と干渉する可能性があります。本当に高速な線形代数が R で必要な場合にのみ、以下のオプションを使ってみて下さい。 |
+ | R に付属しているライブラリ ({{Pkg|blas}}, LAPACK) の多くはマルチスレッドに対応していません。リファレンスの {{Pkg|blas}} パッケージを最適化された BLAS に置き換えることで、R における計算速度が劇的に向上します。ただし最適化された BLAS パッケージは全て何らかの欠点を持っています。例えば商用ライセンスが必要だったり、標準の R の並列処理と干渉する可能性があります [http://blog.revolutionanalytics.com/2015/10/edge-cases-in-using-the-intel-mkl-and-parallel-programming.html]。本当に高速な線形代数が R で必要な場合にのみ、以下のオプションを使ってみて下さい。 |
=== OpenBLAS === |
=== OpenBLAS === |
||
− | {{ |
+ | {{Pkg|openblas}} は [[AUR]] からインストールすることができ、extra に含まれているリファレンスの {{Pkg|blas}} を置き換えます。extra に含まれている標準の {{Pkg|r}} パッケージを使用している場合、特別な設定は必要ありません。R はシステムの BLAS を使うように設定されており、OpenBLAS がインストールされている場合、OpenBLAS を使用します。 |
− | === Intel |
+ | === Intel MKL === |
− | '''使用しているプロセッサが Intel 製の場合'''、[ |
+ | '''使用しているプロセッサが Intel 製の場合'''、[https://software.intel.com/en-us/intel-mkl Intel math Kernel Library] を使用することを強く推奨します。'''MKL''' はマルチスレッド対応というだけでなく、Intel プロセッサ専用の最適化が行われており、伝統的なライブラリと比べて圧倒的なパフォーマンスを発揮します。 |
− | 最初に [[AUR]] から {{ |
+ | 最初に [[AUR]] から {{Pkg|intel-mkl}} パッケージをインストールして、それから {{AUR|r-mkl}} パッケージをインストールしてください。 |
{{Note| |
{{Note| |
||
+ | * {{AUR|r-mkl}} と ''R'' をインストールした場合、''R'' を削除するように表示されます。''r-mkl'' をインストールしたら、''R'' のコンソールで次のコマンドを実行してください: {{ic|> update.packages(checkBuilt=TRUE)}}。 |
||
− | * if you install the {{AUR|r-mkl}} with '''R''' already installed, you will be prompted to remove '''R'''. Once '''r-mkl''' is installed, please run on '''R''' console the following command : |
||
− | {{ic|> update.packages(checkBuilt=TRUE)}} |
||
* here are elapsed time in sec from computing 15 tests with default GCC build and icc/MKL build: ''274.93 sec'' for GCC build, ''21.01 sec'' for icc/MKL build. See [https://stat.ethz.ch/pipermail/r-help/2014-September/421574.html this post] for more information. |
* here are elapsed time in sec from computing 15 tests with default GCC build and icc/MKL build: ''274.93 sec'' for GCC build, ''21.01 sec'' for icc/MKL build. See [https://stat.ethz.ch/pipermail/r-help/2014-September/421574.html this post] for more information. |
||
}} |
}} |
||
− | === intel- |
+ | === intel-advisor-xe === |
− | [ |
+ | [https://software.intel.com/en-us/intel-advisor-xe intel-advisor] はアプリケーションの性能を最大限引き出す C, C++, Fortran コンパイラ, ライブラリ, 解析ツールのセットです。 |
+ | {{AUR|intel-advisor-xe}}{{Broken package link|パッケージが存在しません}} パッケージをインストールしてください。 |
||
− | First, install the {{AUR|intel-parallel-studio-xe}}{{Broken package link|package not found}} package. You may need to login again for /etc/profile.d/intel_compilers.sh to be loaded (so the compiler bin is in the PATH). Then, modify the {{AUR|r-mkl}} {{ic|PKGBUILD}} file with appending these lines in the {{ic|build()}} section: |
||
− | |||
− | {{bc|<nowiki> |
||
− | # please refer to the intel-parallel-studio-xe package version for path |
||
− | _omplibpath=/opt/intel/${_parallel_studio_xe_dir}/compiler/lib/${_intel_arch} |
||
− | export LD_LIBRARY_PATH=${_mkllibpath}:${_omplibpath} |
||
− | ..................................................... |
||
− | # Build the package using the icc compiler |
||
− | export CC="icc" |
||
− | export CXX="icpc" |
||
− | export AR="xiar" |
||
− | export LD="xild" |
||
− | export CFLAGS="-O3 -ipo -openmp -xHost" |
||
− | export CXXFLAGS="-O3 -ipo -openmp -xHost" |
||
− | make |
||
− | </nowiki> |
||
− | }} |
||
− | {{Note|this package will install the above described '''intel-mkl'''}} |
||
== 参照 == |
== 参照 == |
||
− | * [http://www.rseek.org/ RSeek] |
+ | * [http://www.rseek.org/ RSeek] R 関連のマニュアルの検索エンジン。 |
2024年7月10日 (水) 20:43時点における最新版
関連記事
R は統計計算やグラフィック用のフリーのソフトウェア環境です。
目次
インストール
基本パッケージ
公式リポジトリの r パッケージをインストールしてください。
Fortran でコンパイルするには他にもパッケージが必要です。gcc-fortran をインストールすると良いでしょう。
初期設定
起動プロセスについて詳しく知りたい場合は Initialization at Start of an R Session を参照してください。R
のインストール環境のホームディレクトリは /usr/lib/R
です。ベースパッケージは /usr/lib/R/library/base
に、site 設定ファイルは /etc/R/
に存在します。ロケールが R
セッションの中で Sys.getlocale
と Sys.localeconv
関数によってアクセスされます。ロケールはシステムで定義したロケールになります。
R
セッションを起動するには、ターミナルを開いて次のコマンドを入力してください:
$ R
システムファイルの設定についてのドキュメントを読むには ??Startup
を実行して下さい。help()
を実行するとオンラインヘルプが、help.start()
を実行するとヘルプの HTML ブラウザインターフェイスが、demo()
を実行するとデモを見ることができます。q()
を実行するとセッションを閉じて終了します。
セッションを終了すると、以下のように表示されます: Save workspace Image ?[y/n/c]
。workspace は現在の作業環境であり、ユーザーが定義したオブジェクトや関数が全て含まれます。セーブしたイメージは .RData
形式で保存され、次回 R
を起動した時に自動的にリロードされます。ワークスペースはいつでも save.image(image.RData)
コマンドで手動で保存することができ、いくらでもイメージを作成することができます (例: image1.RData, image2.RData)。イメージは load.image(image.RData)
コマンドでロードできます。
変数
環境変数について言えば、R
は分かりづらいところがあります。非常に量があり site と user で重複しているからです。スタートアップで使われるファイルは2種類あります: $R_ENVIRON
によって定義される環境ファイルと、$R_PROFILE
によって定義されるプロファイルファイルです。
重要な変数は Environment Variables R Documentation で説明されています。
R_ENVIRON
起動時に、まず R
は site と user の .Renviron
ファイルを検索して環境変数の設定を行います。site ファイルは /etc/R
に存在し、configure によって生成されます。
ユーザーファイルの名前は R_ENVIRON_USER
環境変数で指定することが可能です。ファイルを指定しなかった場合、R
はホームディレクトリ内の .Renviron
を自動的に読み取ります。他の場所を使いたい場合は、export R_ENVIRON_USER ="path/to/.Renviron"
とスタートアップファイルに記述してください。R syntax を使って全ての環境変数を設定する場所になります。
R_PROFILE
その後 R
は R_PROFILE
環境変数によって定義される site の Rprofile.site
を検索します。インストールしただけではこのファイルは存在しません。最後に、R
は user の R_PROFILE_USER
を検索します。設定されていない場合、現在のディレクトリ (R
コマンドの > getwd()
で返ってくるディレクトリ) またはユーザーのホームディレクトリに .Rprofile
という名前のファイルがないか検索します。R
のカスタムコードを置く場所です。
R パッケージのインストール
R
にはアドオンパッケージが多数存在し、R のウェブサイト で閲覧することができます。アドオンパッケージは R
の中から install.packages(c("pkgname"))
コマンドを使うことでインストールできます。R
はパッケージをユーザーごとのローカル設定でローカルにインストールすることも、システム全体にインストールすることもできます。
R
セッションの中から、次のコマンドを実行してユーザーライブラリが存在すること、正しく設定されていることを確認してください:
> Sys.getenv("R_LIBS_USER")
[1] "/path/to/directory/R/packages"
R
セッションからのインストールが一番安全で pacman のパッケージ管理と衝突することがありませんが、他の方法でパッケージをインストールすることもできます。ターミナルで次のコマンドを実行:
$ R CMD INSTALL -l $R_LIBS_USER pkg1 pkg2 ...
R パッケージのアップグレード
R セッションから
> update.packages(ask=FALSE)
もしくは、古いバージョン用にビルドされたパッケージを再ビルドする必要がある場合:
> update.packages(ask=FALSE,checkBuilt=TRUE)
シェルから
まず、Arch User Repository から littlerAUR をインストールしてください。このパッケージをインストールすると R のコマンドを直接実行できるようになり、スクリプトフロントエンドのように使えます。また、dirk.eddelbuettel のウェブサイトに littler の情報が載っています。以下はパッケージのアップデートを実行するスクリプトです:
#!/usr/bin/env r # # a simple example to update packages in /usr/local/lib/R/site-library # parameters are easily adjustable repos <- "http://cran.rstudio.com" lib.loc <- Sys.getenv("R_LIBS_USER") update.packages(repos=repos, ask=FALSE, lib.loc=lib.loc)
適当な場所に上記のスクリプトを配置して実行可能属性を付与してください。もちろん、リポジトリの URL やライブラリの場所は自由に変更できます。
R のアップグレードと同時に自動でアップグレード
R のバージョンが変わると R のパッケージが動作しなくなる可能性があります。以下の pacman フックを使うことで R がアップグレードされたときに必要に応じて自動的にパッケージをアップグレード・リビルドできます:
/etc/pacman.d/hooks/r-upgrade.hook
[Trigger] Operation = Upgrade Type = Package Target = r [Action] Description = Updates R packages and rebuilds them if necessary after R upgrade # Depends is optional if this should depend on another package Depends = When = PostTransaction Exec = Rscript -e 'update.packages(checkBuilt = TRUE, ask = FALSE)'
設定ファイル
ホームフォルダで使用する2つのユーザー設定ファイル .Renviron
と Rprofile.r
があります。$HOME
ディレクトリをできるだけ乱雑にしたくない場合、~/.config/r
ディレクトリを作成して Rprofile.r
ファイルをディレクトリのルートに配置してこのファイルをあなたの R
のコードに追加すると良いでしょう。
.Renviron
Renviron
ファイルに記述できるのは冒頭が # のコメント行か、name=value という形式の行だけです。以下はベーシックな .Renviron
の例です:
.Renviron
R_HOME_USER = /path/to/your/r/directory R_PROFILE_USER = ${HOME}/.config/r/Rprofile.r R_LIBS_USER = /path/to/your/r/library R_HISTFILE = /path/to/your/filename.Rhistory # Do not forget to append the .Rhistory R_DEFAULT_PACKAGES = 'datasets,utils,grDevices,graphics,stats,methods,rJava,colorout' # load some default packages at start up MYSQL_HOME = /var/lib/mysql
Rprofile.r
作業ディレクトリの中に Rprofile.r
を配置することで利便性を高めることができます。特定のプロファイルを使うことで、プロジェクトのディレクトリごとに専用の設定ができます。R
で作業ディレクトリに移動すると、ディレクトリ内の Rprofile.r
ファイルが読み込まれます。
以下は有用なオプションやコードの簡単なリストです:
Rprofile.r
setwd("path/to/startup/directory") # define a start up working directory .First <- function(){ #welcome message message("Welcome back ", Sys.getenv("USER"),"!\n","working directory is:", getwd()) } options(prompt = paste(paste (Sys.info () [c ("user", "nodename")], collapse = "@"),"[R] ")) # customize your R prompt with username and hostname in this format: user@hostname [R] options(digits = 12) # number of digits to print. Default is 7, max is 15 options(stringsAsFactors = FALSE) options(show.signif.stars = FALSE) error = quote(dump.frames("${R_HOME_USER}/testdump", TRUE)) # post-mortem debugiging facilities
グローバルなオプション を追加することで R
環境をカスタマイズできます。他のユーザーの設定は こちら を参照。
R にグラフィカルフロントエンドを追加
R の linux 版にはグラフィカルユーザーインターフェイスが含まれていません。しかしながら、R commander や RKWard といった、サードパーティ製の R のユーザーインターフェイスを利用することができます。
R Commander フロントエンド
R Commander は人気のある R ユーザーインターフェイスです。R Commander をインストールするための Arch Linux パッケージは存在しませんが、R パッケージなので R の中から簡単にインストールすることができます。R Commander を使うには tk をインストールする必要があります。
R Commander をインストールするには、コマンドラインから 'R' を実行して、次を入力してください:
> install.packages("Rcmdr", dependencies=TRUE)
しばらく時間がかかります。
library コマンドを使って R の中から R Commander を起動できます:
> library("Rcmdr")
RKWard フロントエンド
RKWard はオープンソースのフロントエンドです。データのインポートや閲覧、一般的な統計テストやプロットなどができます。AUR の rkward でインストールが可能です。
RStudio IDE
RStudio はオープンソースの R IDE です。括弧のマッチングやタブ補完、ツールチップヘルプ、エクセルのようなデータビューアなど便利な機能が沢山入っています。
AUR から rstudio-desktop-binAUR (Rstudio プロジェクトウェブサイトのバイナリ版) か rstudio-desktop-gitAUR (開発版) をインストールしてください。
R ライブラリのパスは R_LIBS
環境変数で設定しますが、RStudio はこれを無視します。そのため、上述のように ~/.Renviron
で R_LIBS_USER
を設定する必要があります。
エディタ IDE や R に対応しているノートブック
Rstudio サーバー
RStudio Server はリモートの Linux サーバーで動作している R をブラウザから操作できるインターフェイスを提供します。
rstudio-server-gitAUR をインストールしてください。/etc/rstudio/rserver.conf
と /etc/rstudio/rsession.conf
がメインの設定ファイルです。インストールするだけでは作成されないので、自分で作成・編集してください。設定オプションに関する詳細は rstudio getting started ドキュメントを参照。
サーバーを起動するには、パッケージに含まれている rstudio-server.service
ユニットファイルを起動・有効化してください。
Emacs Speaks Statistics
emacs ユーザーは AUR の emacs-essAUR パッケージを使って R を扱うことができます。
Nvim-R
vim や neovim のユーザーは nvim-rAUR パッケージで R でのコーディングができます。R markdown (Rmd) ファイルの編集やレンダリング、別のペインでの R コードの実行、変数の調査、ヘルプペインの統合など。
Cantor
cantor は KDE によって開発されているノートブックアプリケーションで、R に対応しています。
Jupyter ノートブック
jupyter-notebook は多数のプログラミング言語に対応しているブラウザベースのノートブックです。IRkernel をインストールすることで R のサポートを追加できます。
最適化されているパッケージ
R に付属しているライブラリ (blas, LAPACK) の多くはマルチスレッドに対応していません。リファレンスの blas パッケージを最適化された BLAS に置き換えることで、R における計算速度が劇的に向上します。ただし最適化された BLAS パッケージは全て何らかの欠点を持っています。例えば商用ライセンスが必要だったり、標準の R の並列処理と干渉する可能性があります [1]。本当に高速な線形代数が R で必要な場合にのみ、以下のオプションを使ってみて下さい。
OpenBLAS
openblas は AUR からインストールすることができ、extra に含まれているリファレンスの blas を置き換えます。extra に含まれている標準の r パッケージを使用している場合、特別な設定は必要ありません。R はシステムの BLAS を使うように設定されており、OpenBLAS がインストールされている場合、OpenBLAS を使用します。
Intel MKL
使用しているプロセッサが Intel 製の場合、Intel math Kernel Library を使用することを強く推奨します。MKL はマルチスレッド対応というだけでなく、Intel プロセッサ専用の最適化が行われており、伝統的なライブラリと比べて圧倒的なパフォーマンスを発揮します。
最初に AUR から intel-mkl パッケージをインストールして、それから r-mklAUR パッケージをインストールしてください。
intel-advisor-xe
intel-advisor はアプリケーションの性能を最大限引き出す C, C++, Fortran コンパイラ, ライブラリ, 解析ツールのセットです。
intel-advisor-xeAUR[リンク切れ: パッケージが存在しません] パッケージをインストールしてください。
参照
- RSeek R 関連のマニュアルの検索エンジン。