Ein Praktischer Verkettungsoperator

Ein praktischer Verkettungsoperator: Es kann hilfreich sein, einen Verkettungsoperator für Zeichen zu definieren. Manchmal finde ich das intuitiver und praktischer als die Verwendung von paste0 oder paste. Außerdem sieht Ihr Code besser aus, wenn Sie verschachtelte Paste haben, z. B. Paste0 (“Y ~”, Paste0 (“z”, 1: 3, “* x”, 1: 3, Collapse = “+”). Der Nachteil ist, dass es die Lesbarkeit Ihres Codes für andere R-Benutzer beeinträchtigen kann, da es sich um eine selbst definierte Funktion handelt (ich denke, es sollte in Ordnung sein, da es wirklich intuitiv ist. Auch andere Skriptsprachen haben einen ähnlichen Verkettungsoperator).

1
2
3
4
5
6
7
"%+%" <- function(...){
paste0(...,sep="")
}
> "hello" %+% "world"
[1] "helloworld"
"hello" %+% "world" %+% 1:3
[1] "helloworld1" "helloworld2" "helloworld3"

Generating formula:

1
2
"Y~" %+% paste0("z",1:3, "*x",1:3,collapse="+")
[1] "Y~z1*x1+z2*x2+z3*x3"

TszKin Julian Chan

Leave a Reply