admin管理员组文章数量:1794759
R语言查看函数源代码source code
function是有多个语句组成,完成一个特定的任务。R语言里面有很多内嵌的functions,用户也可以自己定义。比如说sort, summary, help都是R里面常用的function。
我们如何查看一个R 函数function的源代码呢? 在R里面,想查看一个function的源代码,直接输入function的名字,执行就可以。 我们以sort为例子。
> sort function (x, decreasing = FALSE, ...) { if (!is.logical(decreasing) || length(decreasing) != 1L) stop("'decreasing' must be a length-1 logical vector.\\nDid you intend to set 'partial'?") UseMethod("sort") } <bytecode: 0x0000000014d14e48> <environment: namespace:base>我们可以看到sort的参数和一些R语句。那这个UseMethod("sort")又是什么意思?这个告诉我们sort是一个泛型函数,不同的classes有不同的实现。 我们接着看一下这个泛型函数的所有方法。我们可以看到sort.POSIXlt内部用的是order函数。
> methods(sort) [1] sort.bibentry* sort.default sort.POSIXlt see '?methods' for accessing help and source code > sort.POSIXlt function (x, decreasing = FALSE, na.last = NA, ...) x[order(as.POSIXct(x), na.last = na.last, decreasing = decreasing)] <bytecode: 0x000000000566f2d8> <environment: namespace:base>在函数里面可以看到的<bytecode:>表示代码是编译过得,可能是C,C++或者fortran代码。
版权声明:本文标题:R语言查看函数源代码source code 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686620846a87232.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论