Rでdplyrとbroom関数が最強な件

よし、ようやくまともにRの記事が書けるぞー

なんか最初に書いた統計ソフトの記事なんて毒にも薬にもならないどころか、単に読んでしまう人の時間をつぶしてるだけですね。

2本目なんてペドだしね。でもそれに惹かれたのかアクセス数増えてたよ!

終わってるなーほんと。

 

今回はそれなりに有用なんじゃないかと。

特に自分みたいなR初心者~中級者の間のハンパもんには笑

 

Rでやってると(特に研究目的の統計解析)困ることってたぶん

1、ベクターとかリストとかの概念

2 Rでのデータ整理・いじくり

3 解析結果をきれいに出力

 

だと思うんですよ。

で、いろいろ探してたら

2にはdplyr関数、3にはbroom関数っていうのがめちゃめちゃ使えるってのを発見。

 

dplyr関数は結構有名なようなので、先達のとてもわかりやすいブログでもはっておきます。

Rのdplyrが便利ですねって話。 | 分析のおはなし。

 

簡単にまとめると、このパッケージのいいところは

・データを整理するときに必要な操作が簡単

・そしてそれをパイプ関数なるものでつないでいける

ってとこ。

紹介した記事にも書いてあるのだけれど、

新しい変数つくるのが、mutate("新しい変数名" = 式)で簡単に作れたりとか

グループごとに解析をかけてその結果を出力とかが、group_by("グループ変数名")をはさむことで可能になるのです。

そしてそれを1つ1つややこしい使うデータとかの定義とかする必要なく、

%>%なるパイプ関数でつなげるという。

 

たとえばあるデータセット”A”がある。そこに適当な変数 "newvar" を もともとあった"var1"を100ごとにくぎることでつくる。その新しい変数でわけられたグループごとに平均を計算する・・・っていうことが、

x <- A %>%mutate(newvar = ceiling(var1/10)) %>%group_by(newvar)%>%summarize(avg.var1 = mean(var1))

で可能。

データセット名%>%操作1%>%操作2・・・ってつないでいけばいいんですねー。

なにこれ!感覚的に超わかりやすい!!

 

で、今回のキモともいえるのが3のbroomパッケージ。

CRAN - Package broom

これ自体は2015年5月6日にでたというかなり新しいパッケージで基本機能は回帰分析とかの出力をとてもきれいなデータフレームの形にまとめてくれるというもの。

 

www.r-bloggers.com

 

なにこれ綺麗! 

しかもdplyrと組み合わせることでグループごとの回帰係数を表にまとめるとかがすぐにできちゃうっていう優れもの。

broom and dplyr (こちらを参照)

 

ま、もちろん何かしらの弊害もありそうだけど、使っていくうちにどうにかなるかな。