在R中,根据参数值指定函数

在R中,根据参数值指定函数,r,R,对于这个有点模糊的问题,我深表歉意——我觉得这应该是可能的,但我不知道该怎么做 我正在尝试加速模型拟合功能。我知道我的代码中有几个部分检查模型的某些方面(例如,模型是否分层),并且在每次迭代中检查这些模型方面会减慢代码的速度。因此,与其在每次迭代中检查分层,或者为模型是否分层的情况编写单独的循环,我希望有一种方法可以将函数设置为依赖于模型结构的两个选项之一。然后可以使用相同的代码,但是在迭代中调用的函数会有所不同 具体而言,是否可以为不同情况编写不同版本的函数(例如,函数f(),为分层模型编写版

对于这个有点模糊的问题,我深表歉意——我觉得这应该是可能的,但我不知道该怎么做

我正在尝试加速模型拟合功能。我知道我的代码中有几个部分检查模型的某些方面(例如,模型是否分层),并且在每次迭代中检查这些模型方面会减慢代码的速度。因此,与其在每次迭代中检查分层,或者为模型是否分层的情况编写单独的循环,我希望有一种方法可以将函数设置为依赖于模型结构的两个选项之一。然后可以使用相同的代码,但是在迭代中调用的函数会有所不同

具体而言,是否可以为不同情况编写不同版本的函数(例如,函数
f()
,为分层模型编写版本
f.strat())
和非分层
f.nonstrat
的版本,并在主模型拟合函数调用中使用参数指定
f
应该是什么?大致如下:

if(strat){
   f<-f.strat(...)
}else{
   f<-f.nonstrat(...)
}
if(strat){

fDo你是否提前知道模型是否分层?这听起来像是S3的教科书原因。我正在编写一个程序,需要能够处理模型是否分层的情况-但这只是改变模型拟合算法的几个模型方面的一个例子-因此我不想为e编写单独的算法每种情况下,因为有这么多的组合