对R中的Rprof感到困惑

3
我很困惑如何在R中使用。我按照文档中的示例,类似于以下内容:
Rprof(filename="testProfile.out")
test()
Rprof(NULL)
summaryRprof("testProfile.out")

然而,在testProfile.out内,我只有一行:sample.interval=20000

这让我很困惑,当我运行summaryRProf时,出现了no events were recorded的提示。

如果有任何建议,将不胜感激。


2
test() 函数是做什么的?Rprof 会对工作代码进行分析。因此,如果 test() 返回一个错误,指出找不到函数 test(),那么就没有事件可以被记录了。 - tophcito
也许这可以帮助你:https://dev59.com/Z3A65IYBdhLWcg3wvxeE#15821706 - Henrik
嗯..假设test = function() { for (i in 1:50) print(i) } - user1431282
作为导致上述问题的示例 - user1431282
2
1:50 更改为 1:5000,你就会开始看到一些东西。现在,你的 test() 对于默认的 interval = 0.02 来说太快了。你也可以尝试对 for (i in 1:100) test() 进行分析。 - flodel
嗨,Flodel,确实解决了。如果你回答这个问题,我会接受它。 - user1431282
1个回答

3
问题在于我的测试完成得太快,而Rprof记录的时间间隔不够快。要解决这个问题,您可以设置interval = 0.0002或一些比默认值0.02小的数字。我还通过运行多次测试来解决了这个问题。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接