函数中的 NaN

NaNs in a function

我正在尝试 运行 以下函数,但我得到 NaNs 我不明白我的错误...有什么想法吗?

preg<-seq(0.15,0.42,length=100) 
sigma<-seq(0.01,0.1, length=100) 

y <- c(0.1851852,0.4210526,0.3243243)
lf <- function(preg, sigma) prod(dunif(y, preg, sigma))
lf(0.3, 0.02)

谢谢!

对于dunif,参数是xminmax。根据?dunif

dunif(x, min = 0, max = 1, log = FALSE)

此处,与 sigma

相比,'preg' 的初始值更高(对于 min
dunif(y, preg[1], sigma[1])
#[1] NaN NaN NaN

dunif(y, 0.02, 0.3)
#[1] 3.571429 0.000000 0.000000