我想创建一个带符号的函数(例如,~
),它与“问号”函数的工作方式类似。
答案 0 :(得分:6)
如果不弄乱定义R语法的C代码,就不能像?foo
那样“裸露”。例如,你不能让[fnord
有意义。
这来自R源代码中gram.y的语法定义。
| '~' expr %prec TILDE { $$ = xxunary($1,$2); }
| '?' expr { $$ = xxunary($1,$2); }
| expr ':' expr { $$ = xxbinary($2,$1,$3); }
| expr '+' expr { $$ = xxbinary($2,$1,$3); }
上面的第二行定义了?foo
的语法。你究竟想做什么?
答案 1 :(得分:2)
您可以使用反引号`。
创建具有任意名称的函数和变量`~` <- `+`
y <- 5
x <- 10
y ~ x
# 15
我不会惹恼~
,除非你不打算做任何统计建模....