LoginSignup
9
5

More than 1 year has passed since last update.

wingetにより一瞬にしてWindowsにR環境を構築する

Last updated at Posted at 2021-12-08

R Advent Calendar 2021 8日目の記事です。

2021年も終わろうという今日この頃、皆様のWindows(Windows 10)でもwingetコマンドをいつの間にか使えるようになっているのではないでしょうか?
本日はこれでRとRStudioをインストールしていきたいと思います。

なおWindowsTerminal未インストールの場合、Windows PowerShell(Windows10に最初から入っているPowerShell 5)で起動するコンソールでは表示がアレになるため、cmd.exeを起動して開くコンソールで作業した方が良いようです。
コンソール
(スクリーンショットのためにWindowsサンドボックス上で再現したため管理者権限で動いていますけど、cmd.exeを管理者として起動する必要はありません)

インストール

Rのインストール

winget install -i rproject.r

-iオプションを付けているためインストーラーの画面が開くので、お好みで選択肢を選んでインストールします。終わり。

RStudioのインストール

winget install -i rstudio.rstudio.opensource

-iオプションを付けているためインストーラーの画面が開くので、お好みで選択肢を選んでインストールします。終わり。

Rの設定

デフォルトリポジトリ(CRAN)の設定

パッケージをインストールするCRANのミラーサイトを設定します。日本にあるミラーサイトを使っても良いのですけど

Automatic redirection to servers worldwide, currently sponsored by Rstudio

と書かれているhttps://cloud.r-project.org/(0-Cloud)を使っておけば問題ないでしょう。RStudio社に感謝。

最近追加したアプリとして表示されるR(RGui)からfile.edit()関数を使いマイドキュメント(例:C:\Users\username\Documents)に.Rprofile.rprofile)というファイルを作成して以下のような内容を記入します。

RGui
file.edit("~/.Rprofile")
.Rprofile
options(repos = c(CRAN = "https://cloud.r-project.org/"))

なお、Rに限らずマイドキュメントに設定を保存するようになっているプログラムが大量にあることとOneDriveが自動で「ドキュメント」というカタカナでフォルダを作り変更できない仕様になっているのとの合わせ技で、OneDriveのバックアップ機能でドキュメントフォルダをバックアップするのは完全に罠になっています。マイドキュメントをOneDriveでバックアップするのはオススメできません。

ライブラリ保存先の変更

とりあえずRGuiから{dplyr}パッケージをインストールしてみましょう。

RGui
install.packages("dplyr")

規定の設定ではライブラリはC:\Program Files\R\R-4.1.2\libraryのような場所にインストールされます。ここは管理者権限のない場合には書き込めないので、書き込めない場合RはC:\Users\username\Documents\R\win-libraryのような場所へインストールするか尋ねてきます。
承諾してインストールするとデフォルトのインストール先はそこに設定され、今後は尋ねられなくなります。

RStudioの設定

特になし。

その他インストールとは関係のない話

Proxy設定

install.packages()等はWindowsのProxy設定を使ってくれるようで、特に設定の必要はありません。

(2022/05/22追記)これまでdownload.file(method = "wininet")だったためにWindowsのProxy設定を自動で使ってくれていたところがR 4.2.0でwininetは非推奨となり、デフォルトは他OSと同じlibcurlになったため、WindowsのProxy設定を使ってくれなくなりました。以下のようにALL_PROXYを設定するのがオススメです。

色々なパッケージの内部で使用されている{curl}パッケージはWindowsのProxy設定を使ってくれないようなので、Cntlmやpxを設定して.Renviron.Rprofileと同じようにfile.edit("~/.Renviron")で編集できます)にALL_PROXY=localhost:3128とか書くと良いです。詳しくは{curl}パッケージのドキュメントを見てみてください。

Rscriptコマンドと.Rファイルの文字コード

Rscript --encoding=utf-8 foobar.Rみたいな感じでエンコードのオプションを指定できます。

9
5
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
5