2014-10-07 47 views
1

我明白在R中我们可以通过使用链运算符来创建特殊函数,但是我怎样才能知道链运算符的函数实现/代码呢?R链运算符用法

如果我想找出源的功能,我用> functionname

但是,当我试图找到运营商> "%*%"源代码并没有打印出任何东西。有人可以帮助我如何找到上述连锁运营商的源代码?

回答

0

假设您在谈论管道运营商,您需要使用library加载包magrittrdplyr。然后,你需要使用反引号来访问函数定义:

library(dplyr) 
`%>%` 

这给

function (lhs, rhs)  { 
    lhs <- substitute(lhs) 
    rhs <- substitute(rhs) 
    if (is.call(rhs) && identical(rhs[[1]], quote(`(`))) 
     rhs <- eval(rhs, parent.frame(), parent.frame()) 
    ... 

这样做的原因是这里解释Function name in single quotation marks in R

+0

谢谢你的回答!不,我正在谈论*运营商。如何找到%*% – kosa 2014-10-07 20:42:30

+1

@Nambari您可以使用:'%*%'''返回:''unction(x,y).Primitive(“%*%”)' – DatamineR 2014-10-07 20:49:00

+0

好的,当我使用返回打勾,它给了我。原始(“%*%”),现在我需要弄清楚如何找到这些原始函数的源代码。谢谢! – kosa 2014-10-07 20:49:13