志大才疎。

文系と理系を行き来した人間の掃溜め

【解決?】Rstudioの初回起動時にwarning messageが出て解析ができなかった話

お久しぶりです。んぺ助です。
普段はあまり統計の話などはしないのですが、結構めんどくさい状況に出くわした上に日本語での解説サイト等も特に見つからなかったので、備忘録(&誰かの手助けになれば)として書き起こしておきます。
もし同様の症状で悩まれている方でお急ぎの方は【解決策】の欄まで飛ばしてもらえればと思います。


【症状】
数か月前、自宅のデスクトップパソコンにR及びRstudioをインストールしてRstudioを立ち上げたところ、テンプレ文(R version~...~ to quit R. )の後に以下のようなwarning messageが表示されました。(R versionは4.3.1です)

During startup - Warning message:
package ‘stats’ in options("defaultPackages") was not found 
 Error in inDL(x, as.logical(local), as.logical(now), ...) : 
 unable to load shared object 'C:/Program Files/R/R-4.3.1/library/stats/libs/x64/stats.dll':
  LoadLibrary failure:  ネットワークパスが見つかりません.。


このwarning messageを無視してコードを書いたところ、簡単な四則演算などはできるのですが、rnormなどの基本的な分布や乱数発生を行おうとするとエラーを吐いてしまいます。
(例:Error in rnorm(x) : could not find function "rnorm"
なお、RstudioではなくR本体(R Guiってウィンドウにかいている方ですね)で実行したところ問題なく処理ができたので、恐らくRstudio側の問題だろうと思って色々調べることにしました。 ちなみにfailureといわれたパスにはファイルは存在しました(stats.dllは問題なくインストールされていました。)

【解決策】
まずRtoolsがインストールされていない方は当該バージョンのRtoolsをインストールしてください。
https://cran.r-project.org/bin/windows/Rtools/

次にRstudioを立ち上げ、warning messageの後に以下のように入力します。

writeLines('PATH="${RTOOLS40_HOME}/usr/bin;${PATH}"', con = "~/.Renviron")
なお、参考にしたのは以下のサイトです。(質問者の方のwarning messageとはやや異なっていますが解決策としては問題ないようです)

Loading Packages issues Continued LoadLibrary failure: The specified module could not be found


Rstudioを再起動します。(おそらくそのままでも使えると思いますが、確認していませんので念のため再起動をおすすめします)
うまくいけばwarning massageが消えているはずです。確認のために適当な関数を打ち込んでみます。(dnorm(1,1,1)等の簡単な関数で良いと思います。(statsパッケージに含まれてさえばいれば))
正常に動作すればおそらく問題ないです。

【補足】
半年くらい前にこのエラーに出会い、半ば諦めてほったらかしてたのですが(解析自体はノートPCでもできる上に業務ではSASを使うことが多いので問題はなかった)、ふと思い立って数時間格闘していたら解決しました。warningをそのままコピーして出てきたサイトを色々試したけどうまく行かず……だったので、運が良かっただけかもしれないです。
直った要因はいまいち分かってないのですが、ディレクトリのpathがうまく通ってなかったのかなぁと適当に推測しています。また、問題解消後にR関係のプログラムを全部アンインストールしてから再度試したところwarning messageは表示されませんでした。一度うまく通せば問題ないようですね。(エラーに再現性がないとも言える)
なんにせよ、解決できたので良かったです。

同様の症状が出る方の解決策になれば幸いです。(もしうまくいかなかった方はコメントくだされば他に見つけた解決策らしき方法を共有できるのでよければどうぞ(解決できる保証はないですが))

参考
1. Loading Packages issues Continued LoadLibrary failure: The specified module could not be found (https://stackoverflow.com/questions/70513218/loading-packages-issues-continued-loadlibrary-failure-the-specified-module-coul , accessed:2023/09/11)
2. 【コピペでOK】はてなブログソースコードをエディタ風に表示するCSS, やわらかテック (https://www.okb-shelf.work/entry/original_pre_css , accessed:2023/09/11) ※エディタ風ソースコードの書き方を参考にしました。