好的,我正在撰写一个调用几个函数的较大函数。
问题在于,在某些逻辑条件下,我需要跳出“function_inner”,而不打破“function_outer”。 Break似乎适用于循环,而stop则停止所有函数...有什么想法吗?
function_outer <- function(){
beta =1
function_inner <- function(beta){
if (beta==1){?break?stop}
print("Its not working")
}
return(beta)
}
return(NULL)
是一个相当不错的习惯用法。 - Ari B. Friedman*apply
或replicate
调用中跳出一个函数。在我的情况下,我正在尝试编写一个函数来读取一个长度未知的大文件。replicate
是迄今为止读入信息的最快方式,但会运行预先指定的次数。有人知道如何解决这个问题吗? - CJB*apply
风格的命令(包括replicate
)不太符合 R 的风格。使用循环运行replicate
的速度不会比使用循环慢多少。只需使用while
或repeat
,因为这正是它们设计的用例。 - Ari B. Friedman