Beim Lesen des Funktions-Operator-Kapitels in Advanced R von H. Wickham stieß ich auf die compose
Funktion. Infixoperator, "o" wird verwendet, Funktion Komposition zu erstellen:Anonyme Funktion in Funktionszusammensetzung
library(pryr)
"%o%" <- compose
Nun ist die Frage, warum die folgende Funktion arbeitet
mul <- sum %o% median %o% mean %o% length %o% function(x) x^2
mul(1:10)
10
Aber das tut nicht
mul <- sum %o% median %o% mean %o% function(x) x^2 %o% length
mul(1:10)
Error in FUN(X[[i]], ...) : 'list(...)[[1L]]' is not a function, character or symbol
wo der einzige Unterschied die Position der anonymen Funktion ist.