Help us understand the problem. What is going on with this article?

RStudio 0.99の変更点と最近のRコードの書き方

More than 5 years have passed since last update.

先日、めでたくRStudioのversion0.99がプレリリースとなりました

RStudio大好きおじさんなので、RStudio 0.99の変更点についてのまとめと使用レビューをしてみます。実行環境がMacなため、Mac以外OSをご使用の方は適宜コマンドやメニューをご自身の環境に合わせてお試しください。

公式Twitterでも言っている特に0.98からの大きな変更点は2点

  • コードの補完性の向上(パッケージ名、変数名、関数名)
  • 新しいデータビューア(DTパッケージの埋め込み?)

大きな変更点からみていきます。

詳細な変更点については公式ページを参照してください。

コードの補完性の向上

これまでRStudioでは関数名やデータフレームの変数の(tabキーによる)補完をしてくれていましたが、パッケージ名の補完はできませんでした。0.99では、コンピュータにインストールしてあるパッケージ名を補完する機能がついています。

パッケージの読み込み時の挙動はlibraryでもrequireでも同じです。

lJY8b4UkCQ.gif

候補となる表示がでると、パッケージ、関数に応じた概要を出してくれるのも良いですね。この時点で、詳細なヘルプを見たい場合は、以前と同じくF1キーを押すとヘルプパネルにヘルプが表示されます。

RStudio.png

Rだけでなく、C, C++についても補完してくれるようです(LaTeXにも対応しないかな)

ファイルの補完

read.csv("")とした時に、tabキーを押すことで、候補となるファイル名を表示してくれます。階層の深いフォルダにあるファイルでも探せるので、ファイル名さえ覚えていればディレクトリを記述する手間が省けて便利です。

新しいデータビューア

あるつぶやきをもとにしたこんな話がありました。

データフレームの中身を確かめる - 東京で尻を洗う

いつもどおり、データフレームを表示するr View(iris)を実行してみてください。Viewパネルの変化にお気づきでしょうか。

新しいViewパネルでは、データフレームの値の検索やソーティング、フィルタリング、パネルの独立が可能になりました。やったぜ。

これで文句ないですね。

プロットパネルの解像度の変更

retina, 高解像度のディスプレイに対応して、より綺麗なプロットが表示されるようになりました。

コンソール、ソースパネルのスタイルの統一と新スタイルの追加

これまでは、ソースパネルのみに適用されていたスタイル(メニューバー RStudio -> Preference -> Appearance -> Editor themeで設定)が、コンソールにも適用されるようになりました。また、テーマ自身もかなり増えて、選択の幅が広がっています。お好みのテーマでEnjoy!

ちなみに私はコメントが斜体になる(日本語も)のでDawnテーマを使っています。

ソースパネルタブの並び替えが可能に

複数のファイルを開くと、ソースパネルがぱんぱんになるわけで、これを並び替えることができるようになりました。

ショートカットキーでパイプラインを挿入した時の挙動

細かいところですが、パイプライン %>% をショートカットキー(⌘⇧M)で挿入した時の挙動はその場で以改行する仕様でしたが、少し変わったみたいで、改行をしなくなっています。

iris %>% 
  filter(Sepal.Width >= 4)

これが

iris %>% filter(Sepal.Width >= 4)

こう。ちょっとしたパイプなら改行しないほうが見やすいコードですね。


最近のRコードの書き方

おまけです。RStudio 0.99で実装されたように、Rでのパッケージ名の読み込みにはパッケージ名をクオーテーションで囲うようにしました。また、glmなどでfamily引数に渡す値にもクオーテーションを使うようにしました(i.e.) family = "binomial")。

どちらの場合もクオーテーションがなくても動作するわけですが、オブジェクト名と厳密に区別しようという気持ちからです。

もうひとつ。パイプラインでつないだ関数に渡す引数がない場合、xtable()とかになりますが、ここでの括弧は省略してもいいかなと思うようになりました。

tabキー補完をしたときはカギ括弧がついているので、そちらの挙動と合わせるためにやめた。

150208追記

情報量が少なかったので追記しました。

ソースコード内に絵文字を使う

先日、ソースコード等における絵文字の有効性について書きました。反響がなくて悲しいところです。なのでここでも普及活動。RStudioでは、チャンクや関数間へジャンプできる機能がありますが、これも絵文字を使っていると認知性が上がると思います。

before ↓
without_emoji.png

after ↓
with_emoji.png

自作関数名には「.」(ドット)を使わず「_」(アンダースコア)を使う

Hadleyが言っていた気がします(出所・URL不明。判明次第リンクはります)。Hadley作の関数では、これが統一されています(geom_bar, filter_など)。統一する、というのが大事なところでしょうか。

対になるもの、いくつかの組み合わせは一行ですませる

これまで、x軸y軸にラベルをつける際に

ggplot(~) +
  ... +
  scale_x_continuous("hoge") +
  scale_y_continuous("piyo")

というようにscale_x_continuousscale_y_continuousをいちいち改行していましたが、改行をやめた、というだけ。

また、ある条件ごとにsubsetなりfilterしたデータフレームへの代入も、セミコロン ;を使って連結するようにしています。

皆さんの最近の知見など、どこかに書いてくれると嬉しいですね

hoxom
Machine Learning and Data Analysis Company for Your Smiles :)
http://hoxo-m.com/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away