R 如何强制函数传递某个对象(例如值),而不是失败并传递错误消息

R 如何强制函数传递某个对象(例如值),而不是失败并传递错误消息,r,error-handling,R,Error Handling,是否有办法强制函数传递值(例如0),而不是失败并向屏幕传递错误消息? 询问的原因是我试图在表的聚合(stats)中包含lme函数(nlme),但lme函数在某些情况下发送错误消息,聚合调用失败。 错误消息和导致错误消息的情况的示例 ID= c("3", "15", "24", "25", "26", "28", "29", "30") value= c(0, 0, 0, 0, 0, 0, 0, 0) fit = lme(value ~ 1, random = ~ 1 | ID)

是否有办法强制函数传递值(例如0),而不是失败并向屏幕传递错误消息?
询问的原因是我试图在表的聚合(stats)中包含lme函数(nlme),但lme函数在某些情况下发送错误消息,聚合调用失败。 错误消息和导致错误消息的情况的示例

ID= c("3", "15", "24", "25", "26", "28", "29", "30")
    value= c(0, 0, 0, 0, 0, 0, 0, 0)
    fit = lme(value ~ 1, random = ~ 1 | ID)
    Error in chol.default((value + t(value))/2) : 
      the leading minor of order 1 is not positive definite

谢谢

?try
和/或
?tryCatch
是您的朋友(他们甚至可能记录在同一页上)

我通常使用这样一个成语

ncoefs <- 5
fit <- lme(...)
if (inherits(fit,"try-error")) rep(NA,ncoefs) else fixef(fit)

ncoefs
?try
和/或
?tryCatch
是您的朋友(他们甚至可能记录在同一页上)

我通常使用这样一个成语

ncoefs <- 5
fit <- lme(...)
if (inherits(fit,"try-error")) rep(NA,ncoefs) else fixef(fit)

ncefs谢谢!我在你最初的评论后使代码工作,现在返回查看你的答案。我需要花一些时间来研究您在答案中包含的所有这些不熟悉的函数。谢谢!我在你最初的评论后使代码工作,现在返回查看你的答案。我需要花一些时间来研究您在答案中包含的所有这些不熟悉的函数。