0

我正在尝试在 R 中构建一个如下所示的脚本:

randomlist <- list(x=ran1, y=ran2) #{x,y}
contour <- Conte(c(round(randomlist$x),round(randomlist$y)),img@grey)
#if Conte function returns me an error, then get new randomlist values
#Do until it doesn't returns an error

{x,y}如果随机数在图像的区域内,则函数返回轮廓图像的坐标。我知道这可能是一个愚蠢且不太清楚的问题,但我不擅长 R 并且错误处理对我来说是一团糟。我试过了,tryCatch()但我不知道如何应用它。非常感谢!

4

1 回答 1

1

可重现的代码会有所帮助。我通常处理这些类型的问题,try例如:

temp <- function(N) {
  if (N < 0) stop("Error")
  return(N)
}

out <- 0 
n <- 0 
out <- try(temp(rnorm(1)))
while(class(out) == "try-error") {
 n <- n + 1
 print(n) 
 out <- try(temp(rnorm(1))) 
}  
out 
于 2016-02-19T12:57:06.893 回答