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

我輩はtidyである。自作パッケージはまだない

More than 1 year has passed since last update.

この記事は tidyポエム Advent Calendar 2017 - Adventar 11日目 の記事です。


はじめに

月がtidyですね。とか,完璧なdata.frameなどといったものは存在しない。完璧な絶望が存在しないようにね。とか,ウィットに富んだ記事を楽しく読ませていただいておりました。
そんな折,何でもいいから書いてみたらとお声かけいただき,思いつくままにタイトルを登録したのですが,今見返すととても偉そうなタイトルで,反省しています。だって吾輩tidyじゃないもの...

私のRの歴史は...

私のRの歴史はreshape2の歴史にあらず、plyrの歴史にあらず、plot()の歴史にあらず、単にtidyverseの歴史であると申したいくらいだ。だからtidyverseをロードしていないコードを見ると自分で書いた感じがしない――

というポエムを思いついただけなのでもう書くことが無くなってしまいました。
一応補足説明をすると...Rを本格的に使い始めたきっかけは,ggplot2dplyrtidyrと出会ったことでした。実はreshape2plyrも経ていません。
今や,新規にスクリプトを立ち上げたら,さながら「とりあえずビールで」のようなノリで

setup
library(tidyverse)

ですよ(お酒飲まないですけど)。好きとか嫌いとかはいい,tidyverseをロードするんだ。

これからの日々は...

そんなわけで日々tidyverseのお世話になっているのですが,未だに慣れないところがあって,修業が足りないなあと痛感しているところです。一番躓きやすいのがdplyr::recode()で,いつもdplyr 0.5.0を使ってみるを参照させていただいています。以下のコードは,上記サイトから転記したものです。

recode
x <- c("a", "b", "a", "b", "a", "c")
recode(x, a = "あ", .default = "うん")
#> [1] "あ"   "うん" "あ"   "うん" "あ"   "うん"

例えば名前の似ているdplyr::rename()だと,new = oldの順に書きますよね。

rename
iris2 <- iris %>% dplyr::rename(SL = Sepal.Length)

dplyr::mutate()等も同様に,new = oldの順です。

mutate
iris2 <- iris %>% dplyr::mutate(Sepal = (Sepal.Length + Sepal.Width) / 2)

対してdplyr::recode()は上記の通り,old = newの順。いつも,「どっちだっけ...」と混乱してしまいます。精進します。

オチは特にないです。

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
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  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
ユーザーは見つかりませんでした