以前のTokyo.Rでお話したパイプ演算子自作入門ですが、
%pipe3%
のバグレポートを頂きました。Thanks atusy!
あーほんとだ
— igjit (@igjit) May 14, 2019
右辺が関数名だと動かないですね😇
ありがとうございます!
以下のatusyによる最短のpipeのように、右辺の表現式がsymbolのケースを考慮する必要があります。
v2 thx @igjit for bug report
— atusy (@Atsushi776) May 14, 2019
`%>%` = function(lhs, rhs) {
r = substitute(rhs)
. = lhs
if (is.symbol(r)) return(rhs(.))
a = as.list(r[-1])
.q = quote(.)
if (any(a == .q)) return(eval(r))
eval(https://t.co/GI0WkPxHkF(c(r[[1]], .q, a)))
}
tweetに収まるpipe実装、素敵ですね。