置信区间错误代码函数{

Function for confidence intervals error code {

最近和大家一起做了如下功能(内容暂时不重要)。它似乎是正确的,但是当我尝试处理它时,出现以下错误:错误:“}”中的意外'}'。你知道我做错了什么吗?

这是函数,提前谢谢你(顺便说一句,我检查了每个括号):

编辑:现在可以使用了:

CI <- function(x, s, z, Fall) {

if (Fall == "Fall1") {
result <- mean(x) + c(-1,1)* qnorm(1-z/2)*(s/sqrt(length(x)))


} else if (Fall == "Fall2") {
result <- mean(x) + c(-1,1)* qt(p=1-a/2, df=length(x)-     1)*(sd(x)/sqrt(length(x)))

} else if (Fall == "Fall3") { 结果 <-mean(x)+c(-1,1)qnorm(1-z/2(s/sqrt(length(x))))

} else if (Fall == "Fall4"){ 结果 <- mean(x)+c(-1,1)qt(p=1-a/2, df=length(x)-1)(sd(x )/sqrt(长度(x)))

} 否则{结果<-NA}

return(结果) }

CI(x=x, s=15, z=0.05, Fall="Fall1")

有几个错误 - 1) else 不会进行条件检查,而是使用 else if,2) 应该引用要比较的值 "Fall1"

CI <- function(x, mean, sd, z, Fall)
  {
  if (Fall == "Fall1") {
    result <- mean(x) + c(-1, 1) * qnorm(1 - z / 2) * (sd / sqrt(length(x)))
    
    
  } else if (Fall == "Fall2") {
    result <-
      mean(x) + c(-1, 1) * qt(p = 1 - a / 2, df = length(x) - 1) * (sd(x) / sqrt(length(x)))
    
    
  } else if (Fall == "Fall3") {
    result <- mean(x) + c(-1, 1) * qnorm(1 - z / 2 * 
  (sd / sqrt(length(x))))
    
    
  } else if (Fall == "Fall4") {
    result <-
      mean(x) + c(-1, 1) * qt(p = 1 - a / 2, df = length(x) - 1) * (sd(x) / sqrt(length(x)))
  }
  else {
    result <- NA_real_
  }
  
  
  return(result)
  
}