我正在使用FixedPoint()
软件包中的函数FixedPoint
进行R中的某些计算。即使找不到某个函数的固定点,它FixedPoint()
仍会返回输出(指示错误),此外还会返回错误消息。我想禁止打印任何此类其他错误消息。无论是try()
,也不是suppressWarnings()
,也suppressMessages()
似乎工作。请在下面找到产生此类附加错误消息的示例。
library(FixedPoint)
ell=0.95
delta=0.1
r=0.1
lambda=1
tH=1
tL=0.5
etaL=1
etaH=1
sys1=function(y){
A=y[1]
B=y[2]
TA=(etaM*(1-exp(-(lambda*A+lambda*(A+B)+2*delta)*tL))-2*lambda*A^2-lambda*A*B)/2/delta
TB=(etaM*exp(-(lambda*A+lambda*(A+B)+2*delta)*tL)*(1-exp(-(lambda*(A+B)+2*delta)*(tH-tL)))-lambda*B^2-lambda*A*B)/2/delta
return(c(TA,TB))
}
FixedPoint(sys1,c(1.90,0.04))
这似乎可行:
cc <- capture.output(ff <- FixedPoint(sys1,c(1.90,0.04)),type="message")
这里ff
现在拥有你想要的输出。(或者,你可以换capture.output(...)
的invisible()
,而不是它的返回值赋值给一个变量。)
问题似乎是错误消息是从程序包代码中的un silence
-dtry()
子句发出的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句