本帖最后由 gene 于 2012-12-12 09:21 编辑
R语言中的一些算法经常使用c语言编写,但是如何查看是一个大问题。
现在给出具体的解决办法。
(1)如确定是否一个函数是用c语言写的
在R中敲入
>rnorm
会出现
function (n, mean = 0, sd = 1)
.Internal(rnorm(n, mean, sd))
<bytecode: 0x064e50d8>
<environment: namespace:stats>
解释一下含义:
.Internal 和 .Primitive
.Internal 和 .Primitive 接口用于在程序构建时调用编译入 R 的 C 代码。
这样一来出现了.Internal(rnorm(n, mean, sd)),表明调用了c语言编写的rnorm(n, mean, sd)函数。
(2)如何查看c源码
到
China
http://ftp.ctex.org/mirrors/CRAN/ CTEX.ORG
http://cran.csdb.cn/ Computer Network Information Center, CAS, Beijing
http://mirror.bjtu.edu.cn/cran Beijing Jiaotong University, Beijing
http://cran.dataguru.cn Dataguru (a, Guangzhou
http://mirrors.ustc.edu.cn/CRAN/ University of Science and Technology of China
http://mirrors.xmu.edu.cn/CRAN/ Xiamen University
上下载R-2.15.2.tar.gz
linux版本的,里面有源代码。这个下载下来。然后解压缩。随便放哪
比如你解压到D盘,然后进入文件夹,
D:\R-2.15.2\R-2.15.2
然后搜索文件rnorm.c
就可以找到了,
大功告成,
如果要找其他的,可以搜搜 *.c
|