全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
36143 32
2013-08-26

R语言的调试重要性不言而喻,这段时间准备改进一个R的包,但由于接触R时间不长,中间的很多东西不懂,需要重新打包调试,以对里面的很多程序有深入了解,下面从几个方面分享一下我的收获。

1、  准备工作

a)        R软件的下载http://cran.r-project.org/

b)        下载源码包,比如我下载了tsDyn(非线性时间序列)包,http://cran.r-project.org/web/packages/available_packages_by_name.html

c)        下载相关软件,这里主要指RStudio(http://www.rstudio.com/)和Revolution REnterprise(http://info.revolutionanalytics.com/free-academic.html,学术版的无需付费,SerialNumber:9369-3314-9053)。

d)        如果需要打包,则需下载Rtools工具:http://cran.r-project.org/bin/windows/Rtools/,当然,配套的MikTeX 或CteX(备选)用来生成PDF格式的帮助文件。下载地址:http://www.miktex.org/http://www.ctex.org/HomePage

2、  开始调试

a)        R中的调试(重新打包调试)

如果你准备在R中调试,输入debugOnce(“functionName”)或debug(“functionName”)即可。然后输入函数调用,R会启用调试模式,提示符会由“>”变为”Browse[1]>”,这时敲回车键或“n”(next)即可实现单步调试,按“c”(continue)键跳出当前层次。当然,R中的调试很不爽的地方就是没有图形化的东西,一步一步,无法设置断点(或者用browse()设置断点,非常麻烦)。感觉回到了石器时代。

当然,如果你是不怕麻烦,可在你需要关心的地方写上cat,将关键信息输出,但需要重新打包,安装,每次至少需要5分钟的时间,麻烦(这是我一开始的调试方法),后来看了R编程艺术一书中的调试后,感觉使用其它工具调试是必须的。截图如下:

4.png

b)        RStudio中的调试

在RStudio中调试可参考:http://www.rstudio.com/ide/docs/debugging/overview,需要0.98.274版本才支持调试。如果仍然不明白,可在Youtube上看Debugging R Applications视频,有三个:

http://www.youtube.com/watch?v=tUfJc24XDzs

http://www.youtube.com/watch?v=-3j466H8GUE

http://www.youtube.com/watch?v=tptSrIYOkpM

当然,需要翻墙哦。如果你还不会翻墙,请联系我或下载我下载的三个视频。在RStudio中调试优点就是可以图形化的调试,可设置断点,但唯一的缺点就是无法调试函数内部的函数,比如A函数调用了F函数,F函数又调用了G函数,如果你想调试G函数就无能为力了(或许有,但我还不知道)。感觉还是不爽,不过总算回到了计算机年代了,哈哈。

在RStudio中调试自己的程序,只需先将r源文件Source即可,如图:


3.png

c)        Revolution R Enterprise中的调试

熟悉微软的MS Visual Studio的用户对上面两种方法的调试肯定还是不习惯,不过这种遗憾Revolution R Enterprise 6.2已经弥补了,调试功能强大。可参考下面的视频学习Revolution R Enterprise中的调试。

demo of debuggingin R

视频:http://www.revolutionanalytics.com/demos/revolution-productivity-environment/demo.htm

视频截图:

1.png

我调试tsDyn的截图为:

2.png

调试时,注意激活的文件不要为tests目录中的文件,最好为模型源码文件,比如lstar.r文件,否则调试进入不了里面的函数。

注意,如果报没有embedd函数的错误,请不要紧张,加载tseriesChaos包即可。


附件列表
5.png

原图尺寸 57.07 KB

5.png

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2013-8-26 21:43:20
图片上传后乱套了,郁闷
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-8-27 20:25:30
兄台  第一个剪辑器中额语法高亮很不错,请问您是哪一个编辑器做的吗?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-8-28 13:29:35
非常不错。挺实用的。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-8-29 15:25:28
@hqs00000,第一编辑器是Notpad++,有很多下载的地方哦,官网是:http://notepad-plus-plus.org/
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-8-31 14:11:58
做成word或pdf上传吧,谢谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群