## 난수 생성하기 runif(n,min,max)
rddata1 <- runif(20,1,10)
rddata2 <- runif(20,1,10)
rddata3 <- runif(20,1,10)
truedata <- 5.5
## 평균(최확값) 구하기
mean(rddata1)
mean(rddata2)
mean(rddata3)
## 수치해석시 발생하는 오차
bias <- truedata - mean(rddata1)
residual1 <- rddata1[1]-mean(rddata1)
rerror1 <- abs(residual1)/rddata1[1] ## 상대오차(Relative Error)
residuals <- rddata1-mean(rddata1)
merror1 <- sum(abs(residuals))/length(rddata1) ## 평균오차(Mean Error)
RMSE <- sd(residuals) ## 표준편차
MSE <- RMSE^2 + bias^2 ## 평균오차제곱
serror1 <- sqrt(sum(residuals^2)/(length(rddata1)*(length(rddata1)-1))) ## 표준오차(Standard Error)
perror1 <- 0.6745*sqrt(sum(residuals^2)/(length(rddata1)*(length(rddata1)-1))) ## 확률오차(Probable Error)
## 구한 값 확인하기
rerror1
merror1
RMSE ; sd(residuals)
MSE
serror1
perror1
## 정규분포곡선 그리기
nordf1 <- function(x)
{
h <- 1/(sqrt(2)*RMSE)
v <- x-mean(rddata1)
h*(1/sqrt(pi))*(exp(1)^(-(h^2)*(v^2)))
}
plot(
nordf1,
xlim=c(mean(rddata1)-4*RMSE,mean(rddata1)+4*RMSE), ## 4σ까지
ylim=c(0,0.3)
)