dplyr

メモ:sfにdplyrの関数を使いたいときはlibrary()とかでsf用のメソッドを読み込んでおく必要がある

国土数値情報のGISデータをsfで処理するときのメモ。

kazutan.Rでdplyrのselectとmutateのセマンティクスの違いについてLTしてきました

「Rを用いたデータハンドリングと可視化」ハンズオン&LT(a.k.a. kazutan.R)でLTしてきました。 speakerdeck.com

メモ:dplyrのrow_number()の実装を追う

このissueを解決してなんかコントリビュート感を出したい。が、C++力なさすぎて実装をまったく追えないのでメモ。

dplyr 0.7.0を使ってみる

注:これは2017/04/15に公開した「dplyr 0.6.0-rcを使ってみる」という記事を加筆修正したものです。

メモ:dplyr 0.6.0は、select()するだけならtidyevalいらないっぽい

dplyrがもうCRANにsubmitされたという噂を聞いてNEWS.mdを読んでたら、こんなことが書かれていました。 select() (and the internal function select_vars()) now support column names in addition to column positions. As a result, expressions like sel…

dplyr再入門

というタイトルで、第60回R勉強会@東京で発表してきました。 スライドをつくってたら長くなりすぎたのでいくつかに分割しています。 「基本編」は、mutateやselectなどの基本的な関数と、グループ化についてまとめています。内容はIntroduction to dplyr(原…

メモ:dplyr::select()でインド人を左にはできるけど右にはできない?

どうでもいい話。

dplyr 0.6.0はJOIN系のクエリもけっこういい感じ

去年のJapan.Rで、 Join処理のSQLは、結構雑 (dplyr様って もはや言語ではないのか? - Redshiftの場合 - // Speaker Deck) という文を見て、たしかにあれ何とかならないのかなーと思ってたんですが、どうやら0.6.0ではけっこうよくなってそうな雰囲気です。

メモ:dplyrのselect(data, col1:colN)みたいなやつはどう実現しているのか

select()は内部的にはselect_vars()を使っている。select_vars()はさらに内部ではlazyeval::lazy_eval()を呼び出している。

私と驥悟く蜈オ

※この投稿は「私と里傭兵」大喜利Advent Calendar 2016 4日目の記事です*1。 里傭兵は文字だ。文字通り。 みたいな書き出しではじまる小説があったがその話はここではしない*2。しかし、文字とは何なのか。 「里傭兵」という文字と「里傭兵」という文字は同…

dplyrは言語です

awesomeな方がJapan.RでLTされていたので、アンサーソング的なブログを書いておきます。(嘘です。そんなにdplyr詳しくないです...)

ifelse()は危険なのでやめてdplyr::if_else()を使いましょう

dplyrパッケージのif_else()、case_when()、recode()の紹介をuriboが書いてたので、そういえばこのことちゃんと書いてなかったなと思って書いておきます。

メモ:dplyrがバックエンドにSQLを投げるときの流れ

ちゃんと追ってないけど、print()するにせよcollect()するにせよ結局collect.tbl_sql()が呼ばれるっぽい。

dplyrのmutate_if()とかについて

1か月前にキターとつぶやいたものがついにCRANにきたのでそれについて書きます。 Colwise update https://t.co/AotXyUjYmv キター!— Hiroaki Yutani (@yutannihilation) 2016年5月31日

dplyr 0.5.0を使ってみる

※この記事は4/9に書いた「dplyr 0.4.3.9000を使ってみる」という記事を加筆したものです 「1か月くらいしたら新しいdplyr出るよ」とHadleyが言ってました。 Getting ready to start dplyr release process. Over >150 issues fixed: https://t.co/N6fOAnN5pF…

Rのglobal string poolに溺れる

だいぶ昔にdplyrにこんなIssueを立てたことがあります。r-wakalangでの議論のスピンオフ企画みたいなものです。 この時に、Rの文字列型データがメモリ上でどのように保持されるかについてちらっとコメントがついていました。 dplyr should be taking advanta…

Tokyo.RでdplyrについてLTしてきました。

第53回東京R勉強会@東京(a.k.a. Tokyo.R)でLTしてきました。発表の概略はこちらのスライドをご覧ください(一部省略したスライドがあります)。 dplyrとは何だったのか from yutannihilation

Why are you using UTF-8???

追記(2016/5/1):直りました!!! 追記(2016/12/1):と思ったらそのあとまた壊れてました!!!(涙) Encoding problems on Windows caused by character -> symbol -> character roundtrip · Issue #1950 · hadley/dplyr https://t.co/b6dESZt5WZ フワー…

メモ:dplyr::mutate()に引数のリストを渡したいときは.dotでがんばるよりpurrr::invoke()

これはうまくいく。 common_params <- list(zero = 0, one = 1) data.frame(x = seq(1, 10)) %>% mutate_(.dots = common_params) #> x zero one #> 1 1 0 1 #> 2 2 0 1 #> 3 3 0 1 #> 4 4 0 1 #> 5 5 0 1 #> 6 6 0 1 #> 7 7 0 1 #> 8 8 0 1 #> 9 9 0 1 #> 1…

dplyrで複数カラムを追加したいと思ったときはpurrrでslice_rows+by_slice

r-wakalangでそんな話があった時のメモ。もっといいコードがある気もしつつ、まあこれが割とシンプルなのではないでしょうか。問題は、purrrの使い方をいざという時に思い出せないというだけで。。(重大) plyr::mdply() 私はポストplyr世代なのでplyrまっ…

メモ:dplyrの中で使われるDBIのメソッドをリストアップする

dplyrのバックエンドとして使えるようにするにはDBIのメソッドを実装しなくてはいけません。とはいっても全部実装しなくてもいいはずで、じゃあどれを実装すればいいのかと言うとAdding a new SQL backendを読めばいいはずなんですが、いまいちピンと来なか…

dplyrで複数の変数でgroup byしたときは、summariseでグループ化解除されるのはひとつずつ

(タイトルが何言ってるか分からない日本語ですが、メモと言うことで許してください…) dplyrのvignetteってちゃんと読んだことなかったんですが、訳してみると色々書いてあることに気付きます。

dplyrで分とか時でgroup_by()したいときはlubridate::floor_date()

たとえばこういうデータがあって、分間に何レコードあるか数えたいとします。 library(dplyr) library(lubridate) set.seed(1) x <- runif(100, max = 60) d <- data.frame(timestamp = now() + seconds(cumsum(x))) head(d) #> timestamp #> 1 2015-09-22 0…

自分用メモ:dplyrとかtidyrで要素がネストできたりできなかったり

この記事を読んでて思ったけど、そもそもdplyrとかtidyrは要素がネストするのを許したり許さなかったりするんだろう。 dplyrでgroup_byしてグループ内でテキストにpaste的な事をする。 | 分析のおはなし。

dplyr 0.4.3を使ってみる

最近、パッケージ紹介といえばからだにいいものさんの活躍っぷりがすごいので、私はもうこういうの書かなくていいかなあ...なんて思いながら羽鳥がなんかつぶやいてたのでdplyrの次期バージョンを軽く触ってみて気になるとこだけメモしときます。 dplyr is s…

メモ:dplyr::mutate()の中でstr_split()したいと思ったとき、使うのはtidyr::separate()だ

定期的に忘れるのでメモ。たぶんまた忘れるけど。 Adding multiple columns in a dplyr mutate callstackoverflow.com

Rとヨーダ記法

ヨーダ記法(Yoda conditions)ということばがあります。

メモ:dplyrの中で使うのはdiff()じゃなくてlag()

なんかこれもう常識?な感じが漂ってるので書くの恥ずかしいけど、割とよくつまづくのでメモ。 こんな感じの、累積値が記録されてるデータがあるとする。

dplyrのバックエンドにMariaDBを使う(Ubuntu 14.04)

HDDの記事を見て、sqliteじゃなくて別のDBで読み込むにはどうするんだろう?と思ったので、手元のUbuntu14.04でやってみて、ついでにdplyrでつないでみたときのメモ。

dplyrの*_join()のチートシートを作りました。

神にリツイートされてかつてないほどのRT&Fav数になった一方、日本人はほとんど反応してくれないので寂しさのあまりブログにも書きます。ほんとは前の記事(dplyr 0.4を使ってみる)に載せてた図なんですけど、やましい動機ですみません。 I created a chea…