这应该很简单,但无法在Google或SO上找到任何直接的答案。
想象一下在R中我运行一个函数FOuter()
,在它的体内,它会做一些循环并调用另一个函数FInner()
。是否有一种简单的方法来计算/记录FInner
被调用的次数?我正在尝试估算如果我优化FInner
,我可以节省多少时间。
答案 0 :(得分:4)
您正在寻找trace
。
f1 <- function() 1
f2 <- function() {
for(i in 1:10) f1()
}
.count <- 0
trace(f1, tracer=function() .count <<- .count +1)
f2()
.count
# 10
untrace(f1)