株式会社ホクソエムのブログ

R, Python, データ分析, 機械学習

RStudioアドイン 10選

Rユーザのみなさん、RStudio使っていますか。RStudioを使うなら、RStudioアドインも使いましょう。便利です。

… でも、\どんなアドインがあるのかわからない!

という声をしばしば聞きます。というわけでお気に入りのアドインを10個まとめました。用途ごとに部門を設けて紹介します。

RStudioアドインとは

そもそもRStudioアドインとは何か。それを説明しておかないといけませんね。

RStudioアドインとは、0.99.878以降のバージョンで実装されているRStudioの一機能です。複雑な処理をボタン一発で実行したり、ショートカットとして利用したり、GUI操作で処理を実行できるようになります。

RStudioアドインはメニューバーの「Addins」というボタンあるいは設定されたショートカットから呼び出すことができます。アドインは、Rの関数と同様にパッケージによって提供されているため、該当のパッケージをインストールすることで利用可能になります。

使い方やアドインの作成方法は公式のドキュメントまたはこちらの記事 (RStudioで気軽にLGTM)をご覧ください。

それではおすすめアドインの紹介に入ります。実用、可視化、文書作成、ネタ系の4つに分けます。簡単な説明と動作画像を貼りますので雰囲気を感じてください!カッコ内でアドインが含まれるパッケージを表示しています。

実用系

Rを使った作業一般で役立ちそうなアドインです。こちらからは5つ。

Reformat R Code (addinexamples)

適当なスペースはコードの可読性を高めます。GoogleもHadley Wickhamも演算子の後にはスペースを含めることを推奨しています。

このアドインは、選択したコードの可読性を高めるために実行することができます。具体的には、先の演算子間のスペースの自動挿入と、インデントの調整、一行のコードを任意の長さで改行するという機能をもちます。背景の処理にformatrパッケージが使われています。

https://github.com/HOXOMInc/blog/blob/master/docs/img/rs_addins_top10_1.gif?raw=true

pipefittr (pipefittr)

見やすいコードにするためには、どんどんmagrittrパッケージのパイプ演算子を使うと良いです。でも古いコードなど、パイプが使われていないものもあります。そういった場合にこのアドインが役立ちます。このアドインは従来の、複数の関数の処理を入れ子で記述したコードをパイプ処理での書き方に直します (時々失敗してしまうのが玉に瑕)。

https://github.com/HOXOMInc/blog/blob/master/docs/img/rs_addins_top10_2.gif?raw=true

Render reprex (reprex)

GitHubやStackOverflowなど、自分の環境で発生した状況を説明するには、言葉だけで再現性を成立させることはできません。やはり、状況を引き起こしているコードがなければいけません。ですが実際は、質問をあげる多くの人が問題の記述だけでコードを書きません。この問題を解決するのに大きく役立つのがreprexパッケージです。このパッケージは、GitHub、StackOverflowにRコードと実行結果をコピーできる状態で出力する関数を備えていますが、アドインとしてもその機能を実行することが可能です。

https://github.com/HOXOMInc/blog/blob/master/docs/img/rs_addins_top10_3.gif?raw=true

対象を、コピーされているコードか、現在の選択範囲か、Rファイル全体かといったものを選んで実行できます。

なおこのパッケージの使い方は、こちらのブログ記事にも書かれています。ちなみにパッケージ名にもなっているreprexはreproducible exampleの略だそうです。再現性、大事!

tidydata (tidyshiny)

こちらのアドインは、現在ワークスペースにロードされているデータを対象にtidyr::gather()を実行する関数です。列の除外指定ができないようですが、コードが吐き出されるのでそれを編集すれば良いですね。

https://github.com/HOXOMInc/blog/blob/master/docs/img/rs_addins_top10_4.gif?raw=true

githubinstall (addin4githubinstall)

GitHub上のパッケージをインストールするにはgithubinstallパッケージ一択ですが、適当なキーワードでパッケージを探したい…。そんな時が、あると思います!そこで役立つのがこのアドインです。キーワードを入力して、パッケージのリストから検索・インストールすることができます。

https://github.com/HOXOMInc/blog/blob/master/docs/img/rs_addins_top10_5.gif?raw=true

こちらのアドインは

githubinstallが提供しているものでなく、こちらのリポジトリからパッケージをインストールして利用します。

可視化系

続いてプロットや何かの色を決めるのに便利なアドインを2つ。

colourPicker (colourpicker)

プロットで使われている色を変更したいけどカラーコードなんて覚えていない…。カラーピッカーというアドイン名の通り、色を表示しながら選択するのにこのアドインが便利です。同色の色のパターンも生成することができます。

https://github.com/HOXOMInc/blog/blob/master/docs/img/rs_addins_top10_6.gif?raw=true

さらにこのパッケージでは、下記画像のようにプロットされた画像で使われている色を選択・変更可能なアドインも提供されています。

https://github.com/HOXOMInc/blog/blob/master/docs/img/rs_addins_colourpicker.png?raw=true

なお、shinyjsパッケージでも同じアドインが提供されていましたが、現在はcolourpickerパッケージとして独立したようです。そちらを使いましょう。

ggplot Theme Assistant (ggThemeAssist)

ggplot2の図は各種の要素に対して変更を加えることが可能です。しかし自由度が高いぶん、覚えるのが困難でもあります。このアドインは、その問題を解決します。

既存のggplot2でのプロットを実行するコードを選択した状態でアドインを実行すると、各要素を変更するためのGUIが起動します。あとは煮るなり焼くなり。お好みの図に調理して、コードを出力しましょう。

https://github.com/HOXOMInc/blog/blob/master/docs/img/rs_addins_top10_7.gif?raw=true

文書作成 (rmarkdownまわり)系

Rmd形式のファイルで効果的なアドインを2つ。この他にも論文執筆の際の文献管理に役立つアドインやblogdown、bookdownなどでボタン一発ビルドを実行するアドインなどがあります。

Word count (wordcountaddin)

選択中のコードに含まれる単語数などを数えて出力します。日本語だと精度が高くないですが、読み終わる時間の目安も出ます。文章を書いている際に良いのではないでしょうか。

f:id:u_ribo:20180815193850g:plain

ちなみにMacで利用する場合、Javaのバージョンでエラーになることがあるかもしれません。その際は次の記事にあるコードを実行することで解決する可能性があります。

WrapRmd

RMarkdown内で実行するRコード(インラインコード)の改行を、レンダーに影響を与えずによしなにしてくれるアドインです。パッケージはCRANに登録されていないのでGitHubからインストールしてください。

f:id:u_ribo:20180815194055g:plain

ネタ系

最後にとっておきのアドインを紹介します。

Add gifs (giphyr)

Rの作業に疲れた時、ネコに癒されたくなった時、Shia LaBeoufに喝を入れてもらいったくなる時… そんな時にオススメのアドインです。

このパッケージはGiphyAPIを利用し、おもしろGifを取得するものです。アドインとして、画像の検索機能、貼り付け先や保存先を選べます。

https://github.com/HOXOMInc/blog/blob/master/docs/img/rs_addins_top10_10.gif?raw=true

ここに挙げた以外にも、みなさまオススメのアドインがございましたらホクソエムhoxom_incまでご一報ください!

Enjoy!