楼主: peijianshi
16705 12

[问答] R中编写的函数跳出程序的命令是什么? [推广有奖]

11
bllhm 发表于 2015-8-22 12:56:55
我知道你什么意思,就是像matlab里面的return一样,然而我也想知道r怎么做到,用else又有点Low

12
hongweigg 发表于 2015-8-23 00:03:23
peijianshi 发表于 2014-11-2 19:10
比如编写一个函数,名为"myfun",而在这个R文件下边还有一些命令(比如有五行),当调用时source("myfun" ...
这应该属于程序组织的问题。
要分清函数和主程序的关系,break只是跳出循环,q()是结束整个程序的运行。基于楼主的问题,猜测应这样组织程序:
#首先定义myfun函数
myfun<-function(){
   if(meetSomeCondition) {
        doSomething
    }else{
        #"不运行下面的程序"
        doOtherThing
    }
}

#其次在主程序(或主函数)中按顺序执行即可
myfun()
doLastFiveLinesCodeHere_line1
doLastFiveLinesCodeHere_line2
doLastFiveLinesCodeHere_line3
doLastFiveLinesCodeHere_line4
doLastFiveLinesCodeHere_line5
已有 1 人评分论坛币 收起 理由
admin_kefu + 20 热心帮助其他会员

总评分: 论坛币 + 20   查看全部评分

13
locker93 发表于 2018-3-27 22:00:03
if(condition)
{
   return(message(""))
}
这样可以直接跳出程序,但是会出现一个空行

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-2-2 06:49