예측 간격 계산


9

여기에 다음 데이터가 있습니다 . 탄화수소 백분율이 1.0 일 때 평균 순도에 대한 95 % 신뢰 구간을 계산하려고합니다. R에서는 다음을 입력합니다.

> predict(purity.lm, newdata=list(hydro=1.0), interval="confidence", level=.95)
   fit      lwr      upr
1 89.66431 87.51017 91.81845

그러나이 결과를 어떻게 직접 얻을 수 있습니까? 나는 다음 방정식을 사용하려고 시도했다.

에스이자형=에스2(1+1+(엑스이자형엑스¯)2(엑스나는엑스¯)2)

그리고 R에 다음을 입력하십시오.

> SSE_line = sum((purity - (77.863 + 11.801*hydro))^2)
> MSE = SSE_line/18
> t.quantiles <- qt(c(.025, .975), 18)
> prediction = B0 + B1*1
> SE_predict = sqrt(MSE)*sqrt(1+1/20+(mean(hydro)-1)^2/sum((hydro - mean(hydro))^2))
> prediction + SE_predict*t.quantiles
[1] 81.80716 97.52146

내 결과는 R의 예측 함수와 다릅니다. 예측 구간에 대한 오해는 무엇입니까?


코드에서 MSE를 어떻게 계산합니까?

게시물에 계산을 추가했습니다.
idealistikz

1
MMJ가 제안한 것처럼predict(purity.lm, newdata=list(hydro=1.0), interval="prediction", level=.95)
Vinux

답변:


16

귀하의 predict.lm코드가 장착 된 값에 대한 신뢰 구간을 계산한다. 손 계산은 새 데이터의 예측 간격을 계산합니다. predict.lm손 계산에서 얻은 것과 동일한 결과를 얻으려면로 변경하십시오 interval="confidence". interval="prediction"


1

Dpel의 좋은 답변. 신뢰 구간과 예측 구간의 차이는 다음과 같이 지정할 수 있습니다.

신뢰 구간

에스이자형=에스2(1+(엑스이자형엑스¯)2(엑스나는엑스¯)2)

예측 구간

에스이자형=에스2(1+1+(엑스이자형엑스¯)2(엑스나는엑스¯)2)

출처 슬라이드 페이지 5/17 및 11/17 참조

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.