LoginSignup
1
0

More than 3 years have passed since last update.

【未使用ユーザーに優しい??】Rのパッケージ強制インストール と 読み込み関係小技【R言語】

Last updated at Posted at 2019-11-10

社内、R言語してますか?

たとえばEXCELオンリー分析な社内で、
EXCEL分析から卒業してR言語分析をしていきましょ!
と言っても、今までRを使ったことない人に突然使えと言っても浸透なんてしないわけで・・・
せっかくRをインストールしてくれても、新言語は小さいこともハードルに感じてしまうもの。

そんなときは自分で調べてみてとか言わずに、こちらから歩み寄ることになるのが理想だよなぁ、と思ったりしてまして、
経験的に一番理解してくれるのはいくつかサンプルでコード組んで公開すること。

R言語の、動かして図が出来ていく様子や書き足されていく過程は見ていて面白いし、
コードと図が結び付くと一気に構文が理解できるようになるもの。

しかし

サンプルコード中にライブラリとか入ってると

「動かないよ。こっち来て教えて。」

になってしまいかねないので、強制インストールさせてしまえばいいのでは?と。

強制インストール!

読み込みはrequireを使います。

requireはパッケージがあればTRUEを返してからロードしてくれるので、IF文が使えます。

こんな感じにしたら

if(require("zoo")){update.packages("zoo")} else { install.packages("zoo");require("zoo")}

もしも入っていなければインストールを動かせや。
入ってるならアップデートしろや。

という内容で走らせることができます。
公開スクリプトに書いておけばパッケージインストール方法とか説明しなくてもいいわけです!

インストールだけさせて、あとでlibrary指定するならもっとシンプルに

if (!require("zoo")) install.packages("zoo")
library(zoo)

でもええと思います。

そのほか

.libPaths()

ライブラリがどこに保存されているのかを調べます。

packageVersion("zoo")

バージョンを調べます。
分析内容のエビデンスを残すならこれでバージョンを書き留めておきます。
パッケージが無いぞ、とか言われたら、

packageVersion("zoo",lib="パッケージのpath")

明示してあげましょう

remove.packages("zoo")

相手のPCが容量不足になることがどうしても心配なら毎回消してあげましょう。

以上

1
0
0

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
1
0