On Wed, 25-Mar-2015 at 03:14PM +0100, Henric Winell wrote: ...
|> Well... Opinions may perhaps differ, but apart from '%>%' being |> butt-ugly it's also fairly slow: Beauty, it is said, is in the eye of the beholder. I'm impressed by the way using %>% reduces or eliminates complicated nested brackets. In this tiny example it's not obvious but it's very clear if the objective is to sort the dataframe by three or four columns and various lots of aggregation then returning a largish number of consecutive columns, omitting the rest. It's very easy to see what's going on without the need for intermediate objects. |> |> ..... |> Unit: microseconds |> |> expr |> subset(all.states, all.states$Frost > 150, select = c("state", |> "Frost")) |> all.states[all.states$Frost > 150, |> c("state", "Frost")] |> all.states %>% filter(Frost > 150) %>% |> select(state, Frost) |> min lq mean median uq max neval cld |> 139.112 148.673 163.3960 159.1760 170.7895 1763.200 1000 b |> 104.039 111.973 127.2138 120.4395 128.6640 1381.809 1000 a |> 1010.076 1033.519 1133.1469 1107.8480 1175.1800 2932.206 1000 c It's no surprise that instructing a computer in something closer to human language is an order of magnitude slower. I'm sure you'd get something even quicker using machine code. I spend 3 or 4 orders of magnitude more time writing code than running it. It's much more important to me to be able to read and modify than it is to have it run at optimum speed. |> |> Of course, this doesn't matter for interactive one-off use. But |> lately I've seen examples of the '%>%' operator creeping into |> functions in packages. That could indicate that %>% is seductively easy to use. It's probably true that there are places where it should be done the hard way. |> However, it would be nice to see a fast pipe operator as part of |> base R. |> |> |> Henric Winell |> -- ~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~. ___ Patrick Connolly {~._.~} Great minds discuss ideas _( Y )_ Average minds discuss events (:_~*~_:) Small minds discuss people (_)-(_) ..... Eleanor Roosevelt ~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~. ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.