我正在编写一些代码来绘制闪亮的控制图(我不必使用qichart库),而且我正努力找到有关错误“替换长度为零”的解决方案,我已经知道此错误表示NULL或长度为0的向量。我逐步尝试在控制台中解决它,但错误没有出现,我认为这很奇怪。 我之所以使用for循环,是因为我没有“ apply&co”功能的练习。 我正在粘贴部分代码,以更好地理解。我发现构建MR时问题出在for循环中,我该如何解决?预先感谢。
day <- input$date
type <- input$type
region <- input$region
pnc <- input$range
d2 <- 1.128
request <- filter(region_dataset, region_dataset$data>=day & region_dataset$denominazione_regione==region)
request <- request[,c(1,2,23,29,which(colnames(request)==(gsub(" ","_",input$type))))]
pbar <- mean(request[,5])
sigmapi <- as.data.frame(matrix(nrow = nrow(request),ncol = 1))
zetai <- as.data.frame(matrix(nrow = nrow(request),ncol = 1))
MR <- as.data.frame(matrix(nrow = nrow(request),ncol = 1))
UCL <- as.data.frame(matrix(nrow = nrow(request),ncol = 1))
LCL <- as.data.frame(matrix(nrow = nrow(request),ncol = 1))
CL <- as.data.frame(matrix(nrow = nrow(request),ncol = 1))
for (i in 1:nrow(request)){
if(input$type=="p positivi"){
sigmapi[i,1] <- sqrt((pnc*(1-pnc))/as.numeric(request[i,4]))
}
else if(input$type=="p nuovi positivi"){
sigmapi[i,1] <- sqrt((pnc*(1-pnc))/as.numeric(request[i,3]))
}
}
for (i in 1:nrow(request)){
zetai[i,1] <- as.numeric(request[i,5]-pnc)/sigmapi[i,1]
}
for(i in 2:nrow(request)){
MR[1,1] <- 0
MR[i,1] <- as.numeric(abs(zetai[i,1]-zetai[i-1,1]))
}
MRbar <- (sum(MR)/as.numeric((nrow(request))-1))
sigmaz <- MRbar/d2
for(i in 1:nrow(request)){
UCL[i,1] <- pbar + 3*sigmaz*sigmapi[i,1]
LCL[i,1] <- pbar - 3*sigmaz*sigmapi[i,1]
}
CL <- rep.int(pbar,times = nrow(request))
laney <- data.frame(request$data,"pnc"=request[5]) )} ```